Let’s get practical, religion aside, with an eye on programmer productivity, here are the top 10 reasons why C# is better than VB.NET, in no particular order. If you have some other ones, let me know.
- In C# the line ends when I type the semicolon. The practical offshoot of this is that I write code like this:
string sql = @"SELECT * FROM SomeSuchTable WHERE ID='WhatHaveYou' ORDER BY ThisAndThatField ASC ";
So when someone hands you a SQL statement you can just paste it into your code and the output (i.e. carriage returns) will still keep the format. In VB.NET, you would have to write the following to keep the formatting.
dim sql as string = "SELECT *" & vbCrLf sql += "FROM SomeSuchTable" & vbCrLf sql += "WHERE ID='WhatHaveYou'" & vbCrLf sql += "ORDER BY ThisAndThatField ASC "
And that’s annoying.
- Increments/Decrements. a++;a–; ‘Nuff said
- I am not sure whether this is a valid reason, but with C# I can use Borland C# Builder which sports my beloved SDI interface, a la VB3, so that you can code full screen. This interface was also available (though not by default), in VB4,5,6 and VS.NET 2002 beta 1. The SDI interface disappeared from the VS.NET product before it shipped though. Anyway, if you miss that kind of interface, you can use it in Borland C# Builder.
- Error Catching. C# catches a lot more errors than VB.NET, such as uninitialized variables, dead code, etc…
- You get to act really snotty to VB.NET developers, yeah! That’s priceless.
- The source code to the C# compiler is available from Microsoft and Novell. This means that you can theoretically develop apps for OSes other than Windows, such as Linux and MacOS. Thanks to Jai Lue for this tidbit.
- C# has Operator Overloading (my favorite feature from C++). Though, via the grapevine, VB.NET will have this feature in VS 2005. Thanks to Aditya Vaze for this language delicacy.
- Comments in C# are just better. You can do multiline comments, XML comments, single line comments, etc… Thanks to German Voronin for this.
- Ah, I am still working on #10
Source : http://www.vbrad.com/pf.asp?p=source/src_top_10_cs.htm