There are now so many ways to write windows apps, win32, MFC, ATL, .NET, WinForms, and probably some others that I don’t know of. Which one should I choose? I’d like one that works on a fresh install of Vista, and is modern and easy to use.
Share
If you are amateur with C++ you’ll have much easier time learning WinForms than any of the native Visual C++ frameworks (Win32, MVC, etc.). WPF will give you best versatily. It’s a bit harder to master than WinForms but managed and so keeps you away from the nasty Win32 stuff.
The native frameworks are good mainly if you want to crunch the last bits of performance or need to keep the footprint small for stuff such as shell extensions.
I’d recommend checking WinForms at least first to get some quick understanding of the principles. If WinForms doesn’t suit you, you can then move to either C++ if you feel you need more low level control or WPF if you wish more shiny features like skinning and theming.
Edit:
Though if you have a look at WPF, remember that fresh Vista contains only .Net 3.0 so 3.5 and 3.5 SP1 features require a separate runtime installation.