Earlier quoted context omitted.
> And because every Linux distro uses a different theme and one of a dozen UI libraries/DEs/etc. the downloaded GUI application will look bad because it won’t fit in. As opposed to, say, Windows, where there is only one GUI and one theme by one company so everything is perfectly match- wait, no, they have bits and pieces running every GUI they've every invented all the way back to the 90s ( https://www.dvhardware.net…
The reality is I can just target winforms on windows, or GDI if I need that. To open a window there is exactly one way if I want it. To open a window on Linux do I call into X11 or wayland? Do I need to also provide a DRM layer for incase it needs to be run directly ontop of DRM because BIG_USER_WITH_MONEY wants that. Should I use QT to get a decent UI library, or GTK, or one of the many other less popular ones. As a…
Not as much anymore. Part of it due to the mess that is the first-party Microsoft's GUI frameworks situation, part of it due to .NET's own APIs and semantics not evolving together with Windows since long time ago.
Funny anecdata: someone* recently made a small app to indicate when (now broken) CTRL+C is actually triggered in Windows. It was initially written in WPF and was exhibiting a weird unmanaged memory leak. Only after porting it to Avalonia (which works everywhere) the issue went away: https://x.com/KooKiz/status/1873726346897330243
So your experience might actually be better with a cross-platform GUI framework!
Mind you, it's still in its "homeland" on Windows - things like access to Registry are part of the standard library, but you may find it performing better on Unix systems otherwise. The IO abstractions certainly do!
* well, not someone but one of the co-authors of Pro .NET Memory Management.