*pre-emptive celebratory nipple tassle jiggle* - Sean Ewington
In fact the possibilities of C#, VB.Net and C++.Net (known as Visual C++ too) are equal for a MS developer. But: If you learn VisualC++ you are able switch later to "normal" C++, improve your knowledge and do e.g. hardware-near programming. IMO VisualC++ improves your value as a developer more than the other languages and if you are able to do VisualC++ programming is writing C# code not a big deal because there are only a few differences.
VBA is just important for basic Macro programming within MS Office so some basic knowledge there wouldn't be too bad.
Panic, Chaos, Destruction. My work here is done.
Drink. Get drunk. Fall over - P O'H
OK, I will win to day or my name isn't Ethel Crudacre! - DDEthel Crudacre
I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer
Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett
Does learning yet another way to use .NET really get you anywhere?
Maybe learning a new framework (or, dare I say, platform?) would be more beneficial. Expanding horizons and all. It wouldn't hurt to be less career dependent on the future of .NET. But regardless of that, you're likely to encounter some ideas and practices that improve your .NET programming.
Barring that, TypeScript looks promising and is a good gateway to what the rest of the world is doing on the web.
Yep, methinks so too. You're better off being able to jump to anything else than simply learn a new interface into DotNet. From past experience, MS's libraries don't last for much more than 10 years - if they're used a lot, unlike stuff such as SilverLight
So the much more pertinent question is: What new set of libs should you be on the lookout for. And then you can relax and learn some weird programming concepts (try the strangest language you can find - by all means) to make you a better programmer instead of someone who knows how to look into DotNet from a different angle .
I'd recommend Lisp & C to start off with. Those 2 would probably give you a grounding for absolutely all possible concepts yet devised in the entire programming field. Thereafter learn languages for fun. Try to make something for another system (e.g. Linux / Mac / Android / etc. etc. etc.) Try to make same portable - to work on any system with only a re-compile at worst!
Once you can do all that, you've literally covered all your bases, no way you will get a curve-ball in the head
Functional language, yes, C, meh. Unmanaged C++ is probably better than C, you'll learn most of the same fun as C and know the most likely language used to solve problems that don't fit C# and VB* well. After those, as irneb suggests, do some dev for another system. I recommend some mobile development, and android in particular, because its new libs, language, IDE, application model, execution environment, product mentality, etc. all rolled into one.
We can program with only 1's, but if all you've got are zeros, you've got nothing.
I think Microsoft is going to loose it, and will be bankrupt in a few years
So, move outside the MS world... I am a .NET developer myself, but am considering moving to Java or something like that...
Currently MS is messing up everything they touch.. i expect Android to take over the complete desktop world as well... like they already did with the phones, tables..browser.. and so..or are you honestly telling me you still use IE or outlook?