VB, C# (and F#, for that matter) are all the same in that they produce the same IL code in the end and so whatever you can do in one of those languages, you can do in the other. However, the way about doing things can be slightly different in each coding language and also, you may be able to do something with more concise source code in a particular language as opposed to another. At the end of the day, it mostly just comes down to the source code. The coding languages are all equally high-leveled. I, personally, think that out of VB, C# and F#, C# is the most developed and nice looking so C# all the way woo. And yes, I'm afraid I must agree, VB is terrible-looking.