These two are completely different technologies. They offer some levels of compatibility in both directions, but apart from that they have nothing in common. Windows Forms is a more or less lightweight shell on top of Win32 / MFC , which means that its extensibility in .NET is not always good in all cases. WPF is a new user interface, implemented from scratch. WPF is also much more flexible when it comes to customizing existing types.
However, at least in my experience, Windows Forms seems to be the industry's most widely used desktop UI. Windows Forms cannot be used with web development, although WPF offers Silverlight and XBAP applications.
If you have already done any UI development, I would dare say that Windows Forms is easier to learn, since it follows more traditional programming paradigms. The WPF programming model is different from this. Although WPF can be used in the same way as Windows Forms, most of its benefits are not achieved until you enable data binding and WPF encapsulation.
Despite the fact that some of the arguments for Windows Forms that choose WPF over Windows Forms will not be a problem for me if all you want to do is learn the interface. It surpasses Windows Forms in all aspects. I just want the software industry as a whole to adapt it on a wider scale! (Although not like no one writes desktop applications anymore, since we got the Internet.)
Mikko Rantanen Apr 21 '10 at 17:42 on 2010-04-21 17:42
source share