C# -vs- VB.NET
I would like some facts on the advantages/disadvantages of these two languages. What are the limititations of each one versus the other?
I have extensive VB6 experience and will probably end up learning both, but would like to know where using one might be more appropriate than the other...
Thanks,
[317 byte] By [
brouse] at [2007-11-11 7:58:43]

# 1 Re: C# -vs- VB.NET
C# and VB.NET are nearly identical in capability. In .NET 1.1, C# has a couple of features that VB lacks, such as unsafe code blocks (direct memory access) and operator overloading, but they aren't things you'll use very often. VB gains these features in .NET 2.0, so the languages become even closer in capability. In 1.1, VB has a better background compiler, so its experience in the IDE is more user friendly, and it makes late binding much easier than C#.
For VB6 programmers, I recommend using VB.NET while you learn the .NET Framework, so you aren't learning both the Framework and a new language at the same time. One you're familiar with the Framework, however, you should definitely learn C#, because most employers seem to prefer it, and surveys have shown that C# developers are paid more than VB programmers.
# 2 Re: C# -vs- VB.NET
You might want to take a look at the following eBook:
Visual Basic .NET or C#, Which to Choose? ( http://www.amazon.com/exec/obidos/tg/detail/-/B0006AB0N0/sr=8-4/qid=1139585066/ref=pd_bbs_4/102-6531576-8613750?%5Fencoding=UTF8&v=glance)
# 3 Re: C# -vs- VB.NET
I'd probably learn VB.NET then C#. I had experience of VB6 when I started with .NET and chose to go down the VB.NET path.
Once you've learned one language it's quite easy to learn another - I used this (http://www.amazon.co.uk/exec/obidos/ASIN/1893115488/qid%3D1139732246/026-2916736-0476466) book to learn the language differences once I learned VB.NET. Learning both languages has it's uses - I still program exclusivly in VB.NET but I'm able to convert C# code into VB.NET when required (many websites post code in one language or the other - it's useful to know both!) I think it also helps you seperate the language specific features of VB.NET from what is part of the framework - You get a better understanding and appreciation for .NET.
Don't get hung up on learning both languages at one - pick one and learn the syntax differences at a later date. As already mentioned, there's not much between the languages - it's more a matter of preference than anything else. I once had to write a wrapper component in C# to interface with a C++ component written by a 3rd party that required the use of unsigned integers. The rest of the project was written in VB.NET. I find VB.NET code to be more readable, but also like some of C#'s syntax features.
# 4 Re: C# -vs- VB.NET
For most folks, its a matter of syntax.
For the rare few who need a particular feature the other language doesn't have, then it's important to pick the right one.
Unfortunately, there is a lot of "look down your nose" attitude towards VB.Net developers... and they traditionally get paid less than C# developers, even when they are doing the same thing.
# 5 Re: C# -vs- VB.NET
When .NET originally released, the philosophy was that "the language doesn't matter". The importance was understanding the .NET Framework and the base class libraries. The language (VB or C#) was simply the syntactial glue that held the pieces together. It was presented that that syntax was the basic difference.
Today, the "marketing pitches" state tha the language does matter a little bit more and that with time the languages may evolve differently. In general, I believe that VB will continue to be made the 'easiest' language to use and to build interfaces with. I believe that C# will evolve to give more and more powerful features so as to be able to rival what lower-level languages do.
You can already see a little of this in some of the additions to VB 2005. The "My" namespace is full of "one-liners" that let you do things in VB in a single line of code.
Overall, however, I think the best comments were the ones that said that a C# programmer will most likely have a better chance of getting paid a little more than a VB programmer. I believe that will be the most notable difference. Otherwise, I think both will ultimately be able to do anything the other can...although one may require a few more lines of code to do it.
Brad!
# 6 Re: C# -vs- VB.NET
Personally I never heard the VB.NET programmers are less paid than C# programmers.
THByte at 2007-11-11 21:53:17 >

# 7 Re: C# -vs- VB.NET
Google for some of the salary reviews..