To reply to the "tutorial" suggestion... um, I wouldn't suggest "plain WIN32 API" anymore as a good way to learn/develop GUIs. It's outdated and clunky to use, albeit its a good "low-level" way of understanding GUIs.
Visual C++ 2005 is free and easy to use. It combines the visual ease of development of "visual-basic-style" development with the underlying power and speed of C++. I don't know if that holds true in VC2003.
For the "run a console application" question, if you use the .net framework ; there is a helper object that may prove useful:
http://msdn2.microsoft.com/en-us/library/system.diagnostics.process_members.aspx
You build such an object, initialize it with the application name you want to launch, then you read the output or the error messages.
but... do that kind of trick only when your basic GUI framework is built and you have more experience with objects.