Once you grasp the basics of C++, you should study commonly used algorithms and data types. Linked lists, binary trees, search & sort algorithms etc. This is useful knowledge no matter what branch of programming you will settle for.
Something that is also incredible useful is knowing assembler programming, because this will give you knowledge of what goes on beneath the C++ code, and you will then become a much better programmer.
For Windows programming, I would recommend you to start with a RAD tool (rapid application development) like Visual Studio or Embarcadero C++ Builder (former Borland). These are professional tools that allows all kind of Windows programming, and they both come in completely free editions.
Once you have done some programs in a RAD tool, you may want to get down & dirty with the details of Windows programming: the Windows API. For this, I strongly recommend the book "Programming Windows" by Charles Petzold, which is the no1 Windows bible addressing almost everything in the API.