Yeah MFC is harder than Winforms as you can tell if you got the Horton book since he only spent like 1 chapter explaining how to use it compared to like 6 chapters on how to use MFC!
f you're undecided on managed vs. native frameworks, then answering the question obviously requires a deeper look. Generally speaking, I would default to a decision of WinForms unless there was a specific reason why this would not be possible. Some of these reasons might include necessity of control over performance characteristics, application startup time, working set size issues, .NET Framework runtime deployment concerns, or maybe a need for extensive OLE document support. Some reasons I would default to WinForms include the superior design time experience, my preference for working in managed code, my personal affinity for the componentized WinForms framework structure, and the availability of resources on the newer frameworks should I need help. With all of that said, it's also worth noting that while WinForms is a great windowing framework, MFC is more mature as an application framework.