tags:

views:

661

answers:

3

So which one is the newer one, and why would I use one over the other. Or more importantly, over Windows Forms?

+11  A: 

Neither is newer than the other, they have both been cooking for roughly the same period of time.

HOWEVER they are totally different things :

WPF == Windows Presentation Foundation WCF == Windows Communication Foundation

WPF is the direct replacement for WinForms. WCF is a framework for talking to webservices, it replaces Remoting. I could waffle for hours on this, but that is a short answer for you :)

slugster
WPF is much, much more powerful than WinForms, and more efficient to work with too. Compare WinForms with raw GDI calls and WndProcs, and you will have some idea of the difference. Many things that are easy to do in WinForms are even easier in WPF, and many things that are nearly impossible in WinForms are easy in WPF. If you have a choice, WPF is almost always better than WinForms. The only exceptions are if you are running on embedded hardware with very limited performance, hardware over 10-12 years old, or must support Windows 2000 or Windows 9x.
Ray Burns
+2  A: 

From Microsoft websites:

Windows Communication Foundation is...

a part of the .NET Framework that provides a unified programming model for rapidly building service-oriented applications that communicate across the web and the enterprise..


Windows Presentation Foundation

Windows Presentation Foundation (WPF) provides developers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents.

TheVillageIdiot
A: 

WPF is NOT a replacement for WinForms. Consider LOB applications, running on bulk enterprise hardware. The overhead of WPF is ridiculous.

Consider the following On my machine I have VS2008 and VS2010 installed.

Visual Studio 2008 (WinForms I believe) is only ~100mb of memory.

Visual Studio 2010 Beta 2 (WPF) is ~300mb.

That's just stupid. There's no reason for VS to be using WPF. It doesn't need flashy graphics or anything special that WPF offers. I'm for one sticking to VS2008. There's a time and a place when WPF is great to use, but Visual Studio and as I said LOB applications are not the time or place, it's just adding ridiculous overhead for pointless reasons.

However, WPF is a lot easier to work with than WinForms (once you UNDERSTAND it, the learning curve is also a lot larger)

Joshua
Uh, you didn't think that through, yeah? WPF is the next generation on from WinForms, hence my comment about "replacement".As for why VS2010 is done in WPF.... i imagine it must be a whole bunch easier to do WPF rendering/layout etc when your IDE is written in WPF than it would be when the IDE is still predominantly C++ and COM based like VS2008.
slugster
ITS NOT A REPLACEMENT. Microsoft has no intentions of discontinuing WinForms
Joshua
slugster