What do you think is all that stuff in C:\Program Files, C:\Program Files (x86), c:\Windows\System, C:\Windows\System32, C:\Windows\SysWOW64, %USERPROFILES%\%APPDATA%\Local and %USERPROFILE%\%APPDATA%\LocalLow or the seven versions of the C/C++ VS Redistributable you have installed?
EDIT: typos
The Linux world is just in complete shambles in this regard. You build something on one LTS release, you don't know if it executes on the next. As the joke goes (it isn't even really a joke), it's so bad that Win32 is the only stable ABI on Linux
(Note that Windows also does vitalization for compatibility reasons.)
On another level, maybe it's just "in the name". Windows lets you run your GUI windowing programs, and that all keeps working. GNU/Linux lets you run 1990 base industry standard API programs, all that keeps working, but for anything else, all bets are off.
I actually am disappointed about pretty much that. There is still no good permissions/sandboxing mechanism for PC operating systems like what's on smartphones. (to be clear I'm not calling for smartphone-like freedom restrictions on PCs, just more control over what applications can do)
That's one of the issues Flatpak tried to resolve on Linux. AFAIK Windows Store is an idea pretty similar to Flatpak (permissions, solving distribution problems...) but also no one uses it. So it's not like Microsoft doesn't want to evolve exe either.
Running a statically linked elf doesn't. Meanwhile modern Windows does its best to corral users into the Microsoft Store. The primary difference is a single centralized ecosystem versus true user freedom and the anarchy that results in.
But due to old apps which nobody will update to package, I assume a lot of users will just disable all sort of warnings.