Both use the same framework and speed is very much equivalents. Let us list the advantages of VB.NET and C#:
Advantages VB.NET
- Has support for optional parameters that 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 parts 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#
- XML documentation is generated from source code but this is now been incorporated in Whidbey.
- Operator overloading which is not in current VB.NET but is been introduced in Whidbey.
- 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.