I think what your problem is, IWishIKnew, is that, you personally know what it is that you want to learn in terms of the big picture, but you aren't aware of all the different ways of going about it, such as Win32, MFC, C#, C++/Cli, etc. Any of the former will create a usable GUI. However, they are all quite different in terms of the tools required and what the finished code looks like. The other aspect of this is that once you start out on some specific path, you find out there is a lot to learn to master it. Depending on the amount of time and effort you want to put into it, it becomes hard or impossible to master all of them. So the thing to do when starting out is to try to understand the ins and outs of the various technuques and choose the one that fits closest to where you want to go with your coding.
The Win32 choice is what coders term the lowest level approach. Its closest to the hardware or bare metal as you can get. It tends to take a lot of tedius code to get something done, but creates programs of the smallest posible size but with good performance. The Api calls are in C but you can compile in C++ and create whatever objects you want using the capabilities of C++ to your hearts content.
All the other techniques sit 'on top' of the Win32 Api and make calls into it. As such there are always class libraries associated with them that are compiled with your code. Another way of putting it is they have code 'dependencies'. A lot of C++ coders take this route because Object Oriented Programming is popular, and C++ has very good OOP capabilities.
Another aspect of the thing that has become popular are cross platform toolkits such as Qt and wxWidgets. These environments allow you to compile your code to run on multiple platforms such as Windows and Linux. So they expose a high level and consistant object oriented Api whose lower level plumbings (their compiler toolchain) contain binaries that compile against the desired platform, i.e., Linux/Windows.
So it might be a good idea to back up and study your choices first before jumping into code. Once you start you kind of get funneled or tunnel vision, so to spesk, and it becomes harder to turn back and choose another course. This sort of thing has happened to all of us. I've personally dabbled in MFC, .NET, and a few others.
Actually, you are trying making your app in the "Sponsored" way - which may be hard to beginners.
As I stated in another post, you should begin with the Raw C Winapi and Native C++ - That is lots easier for beginners that has less experience with C++ syntax and also faster. Once you understand the C++ syntax well enough you may dare to get into the MFC/ATL/CLI/Whatever world.
You know you're reading the right tutorial once you see RegisterClass, CreateWindow and GetMessage/SendMessage, or DialogBox for visually prepared dialogs.
I hope this explained some things - if not, well, you are free to stick with something else.