Programmers changing from Visual Basic (VB) to C# may have some problems. The amount of difficulty depends on the background of the programmer and their ability to pick new things up.
The .NET framework is an object oriented one (OO). If a VB programmer is coming from something like VB6, they are more likely to have problems than someone already using VB.NET and OO principles. Similarly a C# or C++ programmer is going to have an easier time using the .NET framework if they are already well versed in OO principles.
Switching between syntactic changes will not that difficult to get used to for a good programmer. After a short period of time, VB programmers will you will remember to add that pesky ; and C# and C++ programmers going back to VB will eventually remember to leave the ; off.
C#.NET and VB.NET have the same underlying library, so most things are pretty similar. C++ is a different matter, but if you know C++, then you will probably find C# or VB.NET pretty easy to get used to.
Whilst syntax should be pretty easy to pick up, learning the power behind the .NET framework straight up is going to take some time if you have never used it before. Luckily, Microsoft .NET documentation is pretty good and there are a lot of resources available on the internet to help you out.
The .NET framework is very large and can only be learnt with time. Working on a simple or perhaps maintenance on an existing project is a good way to learn the .NET framework. If you are working on existing code, hopefully it is well written and teaching you the correcy way to program .NET.
In general I found the .NET pretty easy to get used to. It was a hell of a lot easier to learn and better supported than MFC anyway ;) VB and C# are the easy parts to learn, learning all of .NET is the part that is going to take you time… and OO techniques if you are not already familiar with them.