Sometimes, I need to convert the codes from C# to VB.NET or from VB.NET to C#. So, I need to know some of the syntax differences of C# and VB.NET. The Table below shows some syntax differences of them:
| C# | VB.NET | Description | 
| using | Imports | Allows methods to be called without fully qualifying with Namespace name | 
| this | Me | Refer to the current object | 
| base | MyBase | Refer to the base class | 
| static | Shared | Specifies that a member is shared by all instances of a class. To call the member, an instance of the class is not required. | 
| no equivalent | Static | Specifies that a local variable's value is preserved between calls. | 
| not required | ByVal | Passing parameters by value | 
| ref | ByRef | Passing parameters by reference | 
| enum | Enum | Declare an enumerator | 
| struct | Structure | Declare a structure | 
| obj == null | obj = Nothing | Check whether an object is not ponit to anything | 
| on by default and not changable | Option Explicit | Specifies that all variables must be declared. | 
| delegate | AddressOf | Use the address of a method | 
| no equivalent | With ... End With  | Evaluate an object one and use many times. | 
| int[] x = new int[4] {1,2,3,4}; | Dim a() as | Initialise an array. | 
| lock | SynLock | Threading primitives. | 
| sealed | NotInheritable | Specifies that a class cannot be used as a base class (cannot be inherited). | 
| sealed | NotOverridable | Specifies that a method cannot be overriden. | 
| abstract | MustInherit | Specifies that a class can only be inherited (an instance of the class cannot be created). | 
| abstract | MustOverride | Specifies that a method must be implemented in a derived class. | 
| virtual | Overridable | Specifies that a member can be overriden | 
| override | Overrides | Specifies that a member is overriding another member. | 
| not required | Overloads | Specifies that a member is overloading another member. | 
| class Class1:I1 | Implements I1 | Specifies that the class (Class1) implements the interface I1. | 
| class Class1:BaseClass1 | Inherits BaseClass1 | Specifies that the class (Class1) inherits class BaseClass1. | 
| Class1 | New | Constructor method, called when object is created. Class1 is classname. | 
| ~Class1 | Finalize | Method called by system just before garbage collection reclaims object, known as destrutor method. Class1 is class name. | 
