When you are talking about windows at it's basic level you use the Windows API, this is a C API. MFC is an object oriented class framework/library that wraps the API. MFC is not available in the free version of Visual C++.
Windows Forms is part of the .net framework. This framework also sits on top the windows API, but has a higher stack of 'stuff'. You do not use C++ to write Windows forms, you use C++/CLI or C#.
My advice would be if you want to do Windows Forms, use C#. I you want to learn C++, avoid Windows forms (mixing C++ and C++/CLI can be done but is best avoided)
You can also check out the Borland/Codegear/Embarcadero/whatever C++ suite -- which also uses the VCL library to write Windows applications. http://www.turboexplorer.com/cpp
MFC is old and deprecated. You don't need to learn it unless you wish to update old code that uses MFC.
one important thing is which platform you will be coding. if its multiple platforms apart from windows then he needs to look for alternatives. Also, a person coming from pascal should first start with basic c and c++ rather than jumping directly into MFC or C# etc etc which may affect his interest in learning something new.
The Visual C++ 2008 Feature Pack includes an expanded MFC library to support modern user interface (UI) elements such as the Office Fluent UI, docking windows and MDI tabbed windows similar to those used in some releases of Visual Studio, enhanced toolbars, a rich new set of controls, support for controlling the overall visual style, support for desktop alerts, and much more.
For a full list of features supported in this expansion of the MFC library, see What's New (MFC Feature Pack).
These features are included in an updated version of the MFC 9.0 library that is available for download as an update that installs over your Visual C++ 2008 installation.