The enterprise is going to choose Windows regardless for the masses and even if consumers make a mass exodus to Apple (not going to happen because of price) or Linux (even less likely) they are out of $30 they charge OEMs.
I had VMWare Workstation before, and it isn't as if there were not Terminal alternatives already.
Other than that the whole UAP/UWP/WinUI/WinAppSDK, .NET Native, C++/CX, C++/WinRT has been a mess. They may shout to the winds it is the future, yet it is mostly crickets and endless list of bugs on the Github repos and related VS tooling.
If you are choosing to use Apple online services, sure, you'll get upsells I guess, as with any other online service. I don't use any of Apple's online services, and never see those ads.
Buy a new Apple Watch and notice that the settings app with have a [1] badge trying to upsell you to buy AppleCare+. They obscure dismissing these by clicking the "Add AppleCare Coverage" button and then having a button that says actually no.
Not as egregious as what windows is doing with copilot everywhere or sneakily flipping user-toggled options during updates, but it’s all some degree of gross.
It's certainly not as bad _right now_ as what you'll see on Windows 11, but this is something that will almost certainly only get worse over time.
You don't need to buy a Windows Watch to get ads on Windows though. They'll be right there anyway, and more of them.
Windows is absolutely miserable, but with WSL installed it's far and away the better dev environment. I say that as someone who dailies Linux and hates all three OSes.
The workarounds to get rid of the nag to log into your icloud account on macOS are far more difficult than the workarounds to avoid using an MS account in Windows.
Do you have an example? I have to set up macOS on the regular, and after saying no to iCloud on the setup screen, it never bothers me again.
They are very aggressive with trying to get me to “update” to Tahoe, though.