Is WinForms dead?


If you aren't able to comment below, it's possible that your account has not been whitelisted yet. Drop us a tweet @dotnetkicks and we'll get right on that!



6 comments

JudahGabriel
1/28/2015 5:48:04 PM
Seems to me WinForms doesn't have a great use case: if you're building a desktop app for Windows, WPF is clearly the way to go. The only scenario I see WinForms being used for is, "Well, I don't need databinding, I just need something quick and dirty." Even then, it's not much a leap to use WPF. And given that WPF can interop with existing WinForm controls, there really isn't a great use case for WinForms. It is there for legacy support, but for new Windows desktop apps, WPF is the way to go. All that said, the times when I need a Windows-only desktop app is rare; that whole market is shrinking due to the web.

Paul Wheeler
1/28/2015 6:32:03 PM
I'm with @JudahGabriel, I would continue to use WPF over WinForms for new desktop applications. With WPF being the basis for Windows Store apps and the changes coming with Windows 10, it seems like Microsoft plans to stick with WPF for everything non-web.

Robert Greyling
1/28/2015 9:01:37 PM
I agree with @JudahGabriel and @paulwheeler that WPF is the obvious choice going forward, but having been involved in quite a few Enterprise projects in the last 5-10 years, I definitely didn't see as much adoption as I would have thought - especially in the financial sector. Many projects - even new ones as little as 5 years ago were kicking off built in WinForms even though WPF was well established and mature. The number of times I found myself screaming in an echo chamber that we should use WPF was astonishing - it was so hard to teach and old dog new tricks as they say. This was especially true for all of those 50% off-shore projects I found. Still today I know many colleagues working away in WinForms with no WPF in sight. It also seems that Enterprise IT is more comfortable with the deployment and management processes around WinForms for some reason, even though there’s hardly any difference with WPF – they just like things the way they are – drives me insane! Maybe with Windows 10 coming up, and with a free upgrade as well, there may be more movement on that front in the coming years, but right now I’d say there’s still a ton of WinForms buried in the Enterprise and it’s not going anywhere – just like there’s still a ton of COBOL buried there too. My bet is that WinForms will be around for at least 10 years or more…

Thomas Levesque
1/28/2015 11:19:45 PM
It's true that WinForms isn't quite dead, and it will probably stay alive for many years. Many existing projects don't really need to be migrated to WPF. WinForms is easier to learn for beginners. And if you just need to make a quick and dirty app (e.g. internal tool), it's more productive than WPF (mostly because the designer is simpler and easier to use). However, for new projects, using Windows Forms would never cross my mind; it's way too limited compared to WPF. Customizing the appearance of controls is a no brainer in WPF, but it's a daunting task in WinForms. WPF really shines in advanced data binding scenarios, whereas in WinForms you hit the limits pretty soon. Clean separation of UI and logic is much more natural in WPF than it is in WinForms, and XAML makes it much easier for designers to be involved in the development process.

Jeremy Morgan 
1/28/2015 11:51:55 PM
I think it's safe to say WinForms will be around for a while just for legacy purposes. There's so much of it out there, and when it was the only choice it was used a TON. I've run into it several times and asked "What about WPF?" and the answer is usually "too much rewrite". If you can't justify the cost of changing everything and do a lot of fill out + submit CRUD stuff it makes sense why they use it. With Greenfield stuff I really doubt there a lot of folks choosing it on purpose so it will likely phase out soon enough.

Robert Greyling
1/28/2015 11:56:48 PM
This is so true - you're spot on @JeremyCMorgan when it comes to budgets and rewrite. Every single time I sat at the board room table drinking their expensive coffee explaining why it's in their best interests to move ot WPF, or at least consider it for the next project, I was stonewalled by that word: "budget" and the costs of onboarding new skills. Maybe I was just crap at selling it to them, and maybe I should just rather stick to drinking coffee - which I do very well I might add ;) - but it seems to me that many developers and consultants have hit that same wall, so I think you're right, it's pretty much here to stay. On the up side, if I ever get bored of web work, at least I'm one of those guys with a TON of time in the WinForms department :)