C# is not for everyone, especially if you are not developing for the Windows platform, a strong IMO. Stick to C++ and GNU, or C and BSD because of the established platform adaption with Windows, Linux, and Unix
If you are using MS Windows mostly then MS VS C# dotNet would be an edge, trust me, the new features include a lot of easier and R(apid)AD stuff compared to VS6. VS dotNet would be easy if you mastered VS 6.
If it is just the C# language then that is easy once you mastered C++ language only. Adding mastery of the dotNet library will take time, especially if you have not mastered the libraries from VC6 or VB6. I can recomend a few ebooks.
Not every thing needs to be mastered up front before you can use dotNet, but there are certain things that should be learnt first. They are stated in the MS course syllabus for web, desktop, or service. Some things can be done using google or a snippet library. Other things will require on demand reading of the documentation. This is similar for other API's and IDE's.
The C# language itself should be mastered, along with how to write certain code sections. That would take about a month or less when you ask for help in your difficut areas.
The sweet part is the library. This is also the longest part which adds technologies which are continuously evolving. Parts of the library are based on various MS technologies. You would spend a lot of time, maybe about half a year learning these, and I mean just the most obvious ones like ASP, ADO, XML Webservice tecnologies. You can keep up with the evolve part as they come out.
You would not normally prefer to use C# over C++ in cases that require a lot of algorithm building and very little function calling.
I work with c/C++, php,(very little python) and Delphi.
Learning C# language maybe useful, but you have to evaluate the Delphi 2006 C# features yourself in comparison with the C++ features. The langauge is easy just watch out for the library base, and do not expect C# interoperability.
I decided to join the world of C# programmers a few weeks ago. I am feeling a little frustrated right now, because what I have basically done is to convert myself from an expert C programmer into a novice C# programmer, but I reasonable sure this move will pay off in the long run.
Give it more than a few weeks and never give up for C skills, never!
Let's act on what we agree on now, and argue later on what we don't.
Black men leave Barbeque alone if Barbeque don't trouble you