I have been programming in C++ for a while now, though I have always only written programs with simple command-line interfaces, never a GUI. I have one such program right now which I would like to convert into a Windows application with a full-fledged GUI with customized graphics (for buttons, etc), but I have no idea where to start.
A Google search turns up a few possibilities: I could simply use the Windows API, or MFC, Visual Studio, Qt, etc. Between all of these, I'm not really sure which to choose, or where to start with any of them. What are the pros and cons of each of these different libraries/tools, and are there tutorials or books available that I could use to learn how to use them effectively?
I should also mention that I've considered switching to C#, as I understand GUI programming is far simpler in that language. My primary concern with doing this, however, is that my program is very processor-intensive and from what I understand, C# is not as efficient a language as C++ when it comes to such programs. Can anyone shed some light on this?