It really depends on your skill level going into this. Depending upon which language you choose, how hard you work, and how easily you're able to understand things, it can take anywhere from 2 weeks to 1 year to learn the basics. Actually becoming good with a language, though, takes much longer and much more hard work and practice.
And as far as difficulty, in my opinion from easiest to hardest:
VB.NET -> C# -> C++ -> C.
Personally, I would recommend C# (you can learn C++ and C from it), but it's really up to you and what you're most comfortable with.
In my opinion from Easiest to Hardest:
VB -> C# -> C -> C++
When you finish learning C#, it will be alot easier to transition to C, atleast in my opinion. Same thing with C, finish it and it will be easier to learn C++. That's how I did it.