At the user experience level, you&#x27;re certainly correct.<p>However, as a sibling comment notes, Linux has also preserved binary compatibility (at the kernel level) for a similar amount of time (of course as long as neither of them break compatibility then Windows will have the numerical edge as it&#x27;s slightly older).<p>So the question becomes, why is compatibility so apparently good on Windows and so apparently bad on Linux? I feel it&#x27;s to do with a culture of dynamic linking and compiling your own software. A statically linked X11 application from 15 years ago will, as far as I can tell, run fine on Linux - it&#x27;s just that such things are rare. You&#x27;re far more likely to come across either a dynamically linked binary, or a source tree. This seems to be reflected in source code compatibility, which is better in Linux.