Please use wxWidgets, the multiplatform C++ class library. It's free, open-source and non-commercial. It's modelled after MFC but it produces code which can be compiled (using conditional compilation) into native code executables with the speed and UI look of the platform for which the compile is targeted. So the Windows executable looks like (and is) a real Windows program, the Mac OS X executable looks like (and is) a native Mac OS X program and the Linux executable is and looks like a real Linux/GTK+ application. It has been in development by a band of open-source programmers led by Julian Smart for over a decade (12 years to be exact)!
So code in wxWidgets and your program will run on both Windows, Mac OS X and Linux, natively. Three for the price of one! And it's much easier to use than MFC. Dialogs and windows are easy to design using the DialogBlocks WYSIWYG UI creator (not free and commercial, but low cost). So prepare your software to be independent of platform yet still look 'native' and be prepared for the future.
wxWidgets also runs on Windows Mobile/Windows CE and MicroWindows/Linux and is therefore also ideal for embedded applications.
See
(this has been a non-commercial presentation)