Win32 -> message loops & GDI
Winforms -> managed C# via P/Invoke
WPF -> throwse all away and uses DirectX
UWP -> Appcontainer sandboxing
WinUI -> decouples from OS entirely
This visual breakdown helped me to see it clearly - https://vectree.io/c/evolution-of-windows-gui-frameworks-fro...