WinForms persists on .NET 10 in VS 2026 because it wraps Win32/USER32 directly, inheriting a 33-year OS compatibility guarantee no successor framework matched.
Key Takeaways
Alan Cooper sold Tripod to Microsoft in 1988; the drag-drop-double-click event model it introduced survives unchanged through VB1, VB6, and WinForms on .NET 10.
Every WinForms control is a thin CLR wrapper over a Win32 HWND; Form, Button, and TextBox each call CreateWindowExW under the hood.
WPF discarded USER32 for a DirectX retained-mode pipeline, gaining animation and vector graphics but losing Win32’s backward-compatibility guarantee – the structural reason WinForms outlasted it for LOB apps.
A raw Win32 window in C# requires ~80 lines and manual delegate lifetime management; WinForms reduces that to 3 lines of body while running the same message pump.
Concrete upgrades over VB6: strong typing eliminates Variant-coercion bugs, and async/await replaces DoEvents hacks without UI freezes.
Hacker News Comment Review
Commenters dispute the framing: WPF is seen as the real successor that stuck for professional-grade Windows apps (VS, JetBrains tools), with WinForms mainly surviving in smaller LOB shops.
Mobile usability complaints dominated early replies – the site blocks text-only zoom and requires horizontal scrolling, reducing reach of the argument itself.
One commenter noted a hidden accessibility config panel on the page that can strip effects and restore readability.
Notable Comments
@n8cpdx: argues WPF genuinely displaced WinForms for professional software and handles dark mode and High DPI better; calls the piece AI-written.