I don't use C++ anymore. I used to love the language, but it seems a bit dated to me now (although, in fairness, the latest C++ standards to go a long way in addressing many of my objections to the language).
If I had to code in C++ today, I would use Visual Studio *IF* I was writing code strictly for the Windows environment. If I needed to be cross platform, I would probably use Eclipse. But I might be persuaded to use NetBeans if I knew I had the time to do a serious evaluation of it vs. Eclipse or VS.
Visual Basic has been around for ages. There was VB6, which was used a lot, but it was a really horrid programming language. It was easy to do easy stuff in VB6, but it was *really* hard to do harder stuff. Some people called it a 'fall off the cliff language'.
VB.NET is different. It is a full fledged .NET language. Any .NET language can be used for writing apps that run *ON WINDOWS ONLY*. If you are writing a Windows Only app, then a .NET language is a good choice. If you need (or at least want) to be cross-platform, then .NET is not for you. Neither is Visual Basic, in any flavor.
My ***personal*** preference is C#. It is another .NET language. I don't mind living in the 'it only runs on Windows' camp. And neither is my employer. I prefer C# over VB.NET because I grew up on C/C++. and C# is closest to those languages, but I can be an order of magnitude more productive writing code in C#. And I can apply my basic knowledge of C derived languages to other languages...like JavaScript. I guess that is the flaw with Visual Basic. If you want to learn any other language after VB, you have to start over. If you want to learn another C derived language, then you already know the very basic syntax rules.