# Visual Basic > Slow Chat with the Microsoft Visual Basic team >  VB.NET vs C#

## RobDog888

Hello MS VB Team and Welcome!

There has always been comparisons between VB.NET and C# as to which one is better but what feature(s) do you guys feel is it that is going to build VB's popularity and growth over C# both in the workplace and/or personal use? Perhaps some feature(s) I havent seen yet or familiar with in 2008 or whats on the drawing board for the next version?

Thank You

----------


## mendhak

I'll add to that question.

_Why_ are there differences at all between the two languages?  Does the fact that differences exist imply that the two languages are meant to be used for different purposes?  For example, can one say "C# is better for web applications, but I'd stick to VB.NET for windows applications."?

I'm really looking forward to an answer for this because I have to put up with a lot of grief at work over this (metaphorically speaking of course).  :Alien Frog:

----------


## chris128

> I'll add to that question.
> 
> _Why_ are there differences at all between the two languages?  Does the fact that differences exist imply that the two languages are meant to be used for different purposes?


I have ALWAYS wondered that! I just assumed I didnt understand the point in there being two languages because I had only ever used VB and didnt know what C# was truly capable of. I'm glad to see im not alone  :Smilie:

----------


## PaulYuk_MS

Hi-

VB and C# are both great languages.  There are interesting stylistic differences, however, the capabilities are about the same for our current set of scenarios and they are on equal footing in the business.  The feature differences are small: C# has small language features like iterators and VB has features like case insensitivity and optional parameters.  In cases where a language gets a feature first in a release we'll often look at whether the broader .net community wants it moving forward.  EnC is an example.  

Instead the languages focus on being different in ways that appeal to the skill set and background of the user base.  We care about moving developers forward to .NET and the latest version of Visual Studio.  VB historically has been the most used language & tool, and that hasn't changed.  VB.NET is the most used .NET language, albeit usage between VB.NET and C# is very similar.  The VB community base is strategically important to MS and we care about delivering experiences that are deeply satisfying.  Per Chris's comment, we want people to be able to move forward without having to learn a completely different language.  

One experience that we continue to push the hardest for VB is _productivity_ in common tasks.  Look at our story for Linq to XML (with literals) and compare that to C#.  The capability is the same but the experience is streamlined for productivity and intuitive usage.  

Whether or not we differentiate more between the languages or stick to roughly parity is a question senior managers are contemplating right now.  

From our perspective you should know we don't think about VB vs. C# per se.  We think about VB + C# vs. the competion, including previous versions like VB6.  By providing a great story for the VB crowd and the C-based crowd we address more of the market. 

--

I'm interested to hear your thoughts, but at the same time I hope to avoid the VB vs. C# "debate" this week in the slow chat.  If you need more ammo to sell your groups on doing VB.NET projects perhaps that's a place I can help.  Again, VB is a great fit for teams with VB skills, plus, it has the largest .NET base so there's safety in numbers.

Best,
Paul

----------


## RobDog888

Thank You for the well versed reply Paul.  :Thumb: 

I was wondering about my part of the question: what you think will be the new feature(s) or future feature(s) that will really increase VB.NET's RAD development as I believe it being a RAD development tool is VB's biggest strength?

----------


## PaulYuk_MS

Hi Rob,

Yes, you bet there will be bigtime RAD advances in data, services, windows, web, office, mobile, and more spaces.  Agree -this is one of the top strengths.  There's still work to do to figure out if we deliver those uniquely to VB or to the rest of the VS/.NET tools and languages.  You can look at cases of both in '08 (RAD WCF service consumption is global, Linq to XML RAD is unique) If you're asking me which ones will be unique to VB I can't answer quite yet...

thanks,
Paul

----------


## Hack

> There's still work to do to figure out if we deliver those uniquely to VB or to the rest of the VS/.NET tools and languages.


Why would it have to be an either/or?

----------


## RobDog888

@Hack, I think  hes saying if it will be unique to vb or common to all including vb.  :Wink: 


Thanks Paul for your reply.  :Smilie: 

With productivity being the strength of VB, do you think that their can be an overuse of "wizards" in the IDE which hinder or create a ependancy on them as the programmer either wont learn or will create a dependancy on doing things via the GUI vs doing the same things with just a few lines of actual code? I prefer doing things purely with code as IMO its better and faster since you know whats going on in the background of those "wizards" that generate db connections/bindings etc.

I have found from experience on this site that users depend upon the wizards and post questions on topics like "How do I change the db path during runtime?". This shows me that they dont know or have forgotten how to write the actual ADO code for it which is very simple.

Are we going to end up with VB needing to be so productive that it will end up hurting its perception in the industry as a strong and professional development language?

----------

