Difference Between VB.Net and C#.Net

Well this is the most debatable issue in .NET community and people treat there languages like religion. Its a subjective matter which language is best. Some like VB.NET’s natural style and some like professional and terse C# syntaxes. Both use the same framework and speed is also very much equivalents. But still let’s list down some major differences between them :-

Advantages VB.NET :-

a).Has support for optional parameters which makes COM interoperability much easy.
b).With Option Strict off late binding is supported.Legacy VB functionalities can be used by using Microsoft.VisualBasic namespace.
c).Has the WITH construct which is not in C#.
d).The VB.NET part of Visual Studio .NET compiles your code in the background.
While this is considered an advantage for small projects, people creating very large projects have found that the IDE slows down considerably as the project gets larger.

Advantages of C#
a).XML documentation is generated from source code but this is now been incorporated in Whidbey.
b).Operator overloading which is not in current VB.NET but is been introduced in
Whidbey.
c).Use of this statement makes unmanaged resource disposal simple.
d).Access to Unsafe code. This allows pointer arithmetic etc, and can improve
performance in some situations. However, it is not to be used lightly, as a lot of the normal safety of C# is lost (as the name implies).This is the major difference that you can access unmanaged code in C# and not in VB.NET.


Comments

Author: Phagu Mahato30 Jan 2014 Member Level: Gold   Points : 8

Thanks for posting useful Difference between C# and VB.NET . I also post more comparision between C# and VB.NET

Advantages VB.NET :-


It has support for optional parameters which makes COM interoperability much easy.
It is supported. Legacy VB functionalities can be
used by using Microsoft. Visual Basic name-space.
Has the WITH construct which is not in C#.
The VB.NET part of Visual Studio .NET compiles your code in the background.
While this is considered an advantage for small projects, people creating very large projects have found that the IDE slows down considerably as the project gets larger.
Support for optional parameters - very handy for some COM interoperability.
Support for late binding with Option Strict off - type safety at compile time goes out of the window, but legacy libraries which don't have strongly typed interfaces become easier to use.
Support for named indexers.
Declaration of variable

Dim x As Integer
Public x As Integer = 10


Advantages of C#


Operator overloading which is not in current VB.NET but is been introduced in Whidbey.
The using statement, which makes unmanaged resource disposal simple.
Access to Unsafe code. This allows pointer arithmetic etc, and can improve
performance in some situations. However, it is not to be used lightly, as a lot of the
normal safety of C# is lost (as the name implies).This is the major difference that you
can access unmanaged code in C# and not in VB.NET.
XML documentation generated from source code comments.
Declaration of variable

int x;
int x = 10;

Author: Ranajoy26 Nov 2015 Member Level: Silver   Points : 6

The differences between VB.NET and C#.NET are as follows :-
Advantages VB.NET: -

· Support for optional parameters which makes COM interoperability much easy.

· With Option Strict off late binding is supported.Legacy VB functionalities can be used by using Microsoft.VisualBasic namespace.

· Has the WITH construct which is not in C#.

· The VB.NET part of Visual Studio .NET compiles your code in the background. While this is considered an advantage for small projects, people creating very large projects have found that the IDE slows down considerably as the project gets larger.

Advantages of C#.NET


· Use of this statement makes unmanaged resource disposal simple.

· Access to Unsafe code. This allows pointer arithmetic etc, and can improve performance in some situations. However, it is not to be used lightly, as a lot of the normal safety of C# is lost (as the name implies).This is the major difference that you can access unmanaged code in C# and not in VB.NET.



  • Do not include your name, "with regards" etc in the comment. Write detailed comment, relevant to the topic.
  • No HTML formatting and links to other web sites are allowed.
  • This is a strictly moderated site. Absolutely no spam allowed.
  • Name:
    Email: