Which language is better to learn or

Posted on 2013-06-11
Last Modified: 2013-06-13

I need some advice on which langauge (C#.NET or VB.NET) is better to learn in the long run.

I've been working in IT for about 14 years now as a Network\Systems Administrator in the Banking industry. I've never done any programming, closest I've come to it, if you even really can call it programming, is making batch scripts.

About a month ago I got in to programming with VB.Net, i found it easy to understand for the most part and really got in to it. But in all honesty, Im an absolute beginner with programming and have been using a lot of my time going through tutorials on the net as well as forums to create applications for my company. Because of my turtle slow progress with creating applications in, my boss wants to send me on a training course to improve my programming skills.

So I went online and found a training center which has a course for beginners VB.NET, though I was told by the training center that they dont have enough people for the class as is not so popular.

They recommended me to look in to C# which is apparently similar to VB.Net and is more popular then The cost of the courses is the same, so maybe the training center is right about the popularity of C#.

I've been looking around the Internet for an idea as to which path to take ( or but can't find anything current. Also a lot of the things I find are very technical explaining the advantages and disadvantages of each of these languages, and because i am just a beginner to programming I become lost as I dont really understand what is being said.

Is someone able to shed some light on this and advise which language is best?


PS. I understand this type of question can cause arguments between developers, so please control yourselves. Since this is a point system I will award points to only those who do not argue with eachother and who give a realistic answer.
Question by:nobushi
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +3
LVL 42

Assisted Solution

sedgwick earned 125 total points
ID: 39239163
The difference between the 2 is syntax in the most part.
U should go with what u feel comfortable with.
After a while you will find it rather easy to start practicing the other language.
U should use either one to learn some programming fundamentals like object oriented, polymorphism etc.

Assisted Solution

TvMpt earned 125 total points
ID: 39239169
C# and VB.NET are identical in form and function. They can both be used to build the same identical systems with exactly the same code. There's no real difference - the beauty of the .NET Framework.

As you already know C# is much more popular and that could be a big advantage when you need the find examples in your studies. Other advantage, in my opinion, is if you need to do something in Java, will be much more easy to read and understand...
LVL 40

Assisted Solution

by:Kyle Abrahams
Kyle Abrahams earned 125 total points
ID: 39239174
In my experience is better to learn both.  At the end of the day both languages are compiled down to the MSIL (intermediate language) and from there down to machine code.

With that said there are a lot more examples that are usually C# related.  Programmers I talk to feel it's a more "pure" langugage it's case sensitive and looks more like code at the end of the day.  But it's just personal opinion.

C# or VB .Net can be converted ( to each other so learning one is essentially learning the other.  Think of them as different dialects of the same language.  They may look and sound different, but it boils down to the same.

I would focus more on learning the tools and controls.  A dropdown list is a dropdown list in both C# & VB.  How you talk to it may be a little different, but the overall behavior isn't changed.

Knowing the difference between when to use a List Box, a Drop down, or more complex things like a Data Adapter vs a Data Reader seperate out the experienced /skilled programmers from those who don't understand what's going on and why it's better to use one over the other.

Each tool has it's own application that suits a particular need or needs.  Can you use a wrench to hammer in a nail, sure.  Would you, especially if you had a hammer?  I look at each class and control as a different tool.  Learning when to use each one is the true key to learning .Net.
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

LVL 86

Accepted Solution

Mike Tomlinson earned 125 total points
ID: 39239305
One simple reason C# is more popular is because it is a "C-based" language:

Thus learning C# means you'll be comfortable with a widely used language syntax, making it easier to "jump" to other languages (or at least understand the gist of code written in them).

The reason above is why you'll find more courses and code examples in C#.  It's just a simple numbers game.  More people are used to C-based language syntax because of the history of programming.

VB.Net syntax is similar to VBA, which is used in MS Office applications, so it's useful in that respect.

Just some things to consider...

Author Closing Comment

ID: 39239325
Thank you all very much for sharing your opinions with me.

Take care,
LVL 40
ID: 39241629
Everything everybody is saying is true.

But although I prefer VB and even earn my living by giving training in VB, I would advise going for C#.

It is true that VB is becoming less popular. My classes used to be full. But for the last year or so, they are filled only to 25 to 50% of their capacity. Part of that is due to the fact that Windows 8 did not have a great impact. But my fellow C# trainer does not see so big a drop in attendance.

And the reason for that is probably that Microsoft does not give the impression that VB as a very bright future, now that Bill Gates is not there anymore to support the language as he did before.

In the past, every time there was a new version of Windows or new features in .NET, the code examples were both in VB and C#. When there was only one language used, VB was often preferred because C# programmer can very easily understand VB, while the reverse is not always true. Nowadays, C# is in front, and in many instances, VB is not even there to be seen.

Try to find a book, published by Microsoft or other, that shows you how to program the Windows Store applications (mobile applications for the new Windows 8 interface) in VB. They are almost all using C# only. Just go on Amazon and compare the results of a search on "windows store VB" or "windows store Visual Basic" to the result for "windows store c#".

Personally, although I prefer VB by a long way, I fear that VB is going down. This debate has been raging on since the beginning of the century, and was futile. But looking at the way the new version of Windows is presented to programmers by Microsoft, it looks as if C# is winning the war.
LVL 86

Expert Comment

by:Mike Tomlinson
ID: 39241693
I feel ya James.  VB is my "native" language.  I got comfortable with C# out of necessity.  For personal projects I always write in VB...

Author Comment

ID: 39241781
Thanks for your input James.

Would any of you know of a good training center in the USA that have beginner courses in C#?

As mentioned before I have very little experiance in programming.

Ive found this test center, which looks like a beginners course:

Would any of you have any other recommendations in the USA? I've searched on google and find a lot of the course to be online. I want to find a center where I can go and physically sit in the class, as I feel this will  minimize distractions.
LVL 40

Expert Comment

by:Kyle Abrahams
ID: 39245754
Actually check with your department of labor.  Right after I graduated with my masters in CS I *still* couldn't find my first job.  A training school actually contacted me and referred me to get a voucher from my state DOL to have the school get paid directly from the state, while I reaped the benefits.

Strangely enough I stared out c++.  Learned VBA / VB out of necessity for a few projects, got really comfortable in it and for the last year or so I've been in C# again.  Now I look at VB code and it seems foreign to me.

Author Comment

ID: 39245780
Thanks for the tip :)

Featured Post

[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For those of you who don't follow the news, or just happen to live under rocks, Microsoft Research released a beta SDK ( for the Xbox 360 Kinect. If you don't know what a Kinect is (http:…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…

632 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question