I have been a hobbyist C# programmer since VS 2005. Long story short it inspired me to go back to college and become a professional developer. I get out of college and what do I do? I get a job as a MFC C++ programmer. Hated it for the first week or two, I mean hated it. Then I started to like C++. Actually liked it a lot while creating non UI logic. But then came the day when my boss put me on UI projects. Just getting a label on the stinking screen is horrible. Trying to get text into or out of it.... Wow. Speaking of text... there are like 3-5 different types. C++ as a language is right up there with C# in many respects but interacting with C++ based UI is the deal breaker. I got a call from a .Net web development shop and jumped boat. That's my story, probably a very common one.