There are several reasons for Windows popularity today:
Active Directory - The centralised control it gives corporates.
Games and DirectX - Although this seems to be getting to be less of a reason.
Backwards compatibility - Windows 16 bit apps are now dead, but you can take the VB6 code I wrote pre-Y2K and run it today.
Linux fragmentation - It's difficult to support all the Linux variations with a single binary (or at least it feels that way to me) I suspect it has a very high support cost. Related to this is the GPL and it's potential to force release of source code.
Active Directory - The centralised control it gives corporates.
Games and DirectX - Although this seems to be getting to be less of a reason.
Backwards compatibility - Windows 16 bit apps are now dead, but you can take the VB6 code I wrote pre-Y2K and run it today.
Linux fragmentation - It's difficult to support all the Linux variations with a single binary (or at least it feels that way to me) I suspect it has a very high support cost. Related to this is the GPL and it's potential to force release of source code.