Having done what you are describing, I would make the following suggestions -
- For a book, take a look at C++ GUI Programming with Qt 4 (2nd Edition) . This is best book I've seen. But there are others, so do look around at them.
- Pick a topic you wish to learn, then work through one of the examples. They are very good and there are a lot of them on all key topics.
- I've always view .net and Qt to have equivalent concepts. For example, when you see QObject or QString, think c# Object or String. This helped a lot.
- Read all posts here with regards to Qt. They are a great source of info. Some of the questions have forced me to do research on new areas to understand both the question and the answer.
Finally, what order should you do these. With regards to books, going off of your comments about learning c++, buy a book. I've always found them to be very helpful. For the other 3 topics I've mentioned, I would recommend doing items 2, 3 & 4 all at the same time. Pick a simple concept you wish to learn about, then work through examples until you understand it.
The two most important things to learn for a good foundation in Qt are Signals & Slots and the GUI. You really need to understand basics on these before you get very far using Qt.
Personally, I think learning c++/Qt is a good thing to do for a c# programmer. It will give you a new perspective on how to solve problems.