It's been some time now, but I still remember the first time I upgraded away from Windows 7 and feeling disappointed.
Since then my hardware is massively more powerful, but I'm still to be convinced my current Windows 10 setup is better than that older Windows 7 setup.
Their laptops got visibly progressively slower. Considering what I read here, I asked them if they installed many software. They said they use the laptops for work only and haven't installed anything beyond office and antivirus. I asked them to take a look. After minutes after turning on, windows said it was installing updates... we waited... the battery went kapuft... we plugged the powerbrick, turned it on again and waited... windows said it was installing updates... after a new reboot and 40 minutes total of waiting I just gave up.
Now, this is not how an EXPENSIVE OS should behave. An expensive OS that behaves like this and still has ads is definitely something I'd only use if there was no other choice.
The most likely culprit for the slow-downs is OEM crap pushed on the device, not Windows itself.
In my personal experience (I'm running 6 Windows PCs in the house for the family and myself) I never had any issue with Windows 10 becoming slower or updates getting in the way or any ads for that matter (except when they switched to the new Edge where a notification of sorts showed up once after boot and was easily dismissed).
For full disclosure, I am running PiHole on my network so it's possible that's somehow blocking some ad-related activity (though I'm yet to see any evidence of actual advertisement being shown in the OS except for stuff about integrated software like Edge and now Teams - hoping this doesn't change with Windows 11). I'm also running fairly powerful machines (nothing older than 4 years, even the kids have beefier laptops), so don't have experience with old / slow machines.
It's funny because Windows went from "too unstable to be relied upon for anything" in the 9x era to "death by a thousand papercuts" today. It's like it's ruled by a law of conservation of awesome: for every feature there must be an equal and opposite misfeature.
Compared to Windows 8, yes. Compared to most anything else, no.
Edit: Seriously, they fixed 5000 flaming bugs in 2.2 release. God knows how many more are there.
Pros:
It's generally stable and in my experience works at least as well as windows 7.
DPI scaling is quite reliable and performant.
Vendor drivers are installed automagically by windows update's background process. It's a bit annoying that you can't disable or pause this process without killing it, so waiting for AMD's 300mb video driver to download over a slow connection is a bit confusing, but it's nice you can skip the usual install step and set a decent resolution without browsing to a webpage in 640x480 first. I would rather have an explicit user-controlled package manager, but this is a step in the right direction.
Cons:
They deprecated control panel in favor of the settings app, but the settings app is missing several important settings, so you still occasionally need to dig through control panel, which is a frustratingly fragmented experience.
"Fast boot" (a minimal hibernation mode) is enabled by default, which locks all of your ntfs partitions on shutdown, so you can't mount them read/write in Linux until you leave windows via reboot or disable fast boot.
The bootloader installs in the first EFI system partition it finds, even if it's on another disk and doesn't have room.
If you have a working internet connection during install, you are forced to create a system user that is linked to and named the same as your Microsoft account. Disconnecting from the network during that install phase gives you the option, though.
Exclusive fullscreen mode has been quietly replaced with an optimized windowed borderless mode. It's nice until you want to cut out that tiny extra latency, and then it's a nightmare. You used to be able to check "disable fullscreen optimizations" in properties for your binary, but that doesn't work anymore. You can add some registry entries for the binary, but that only works sometimes.
You can't shut down without installing updates anymore. Not even via the alt-f4 from the desktop modal like you could in 7.
You can delay updates for a limited period of time, and you can set "active hours" when updates won't be forced. Assuming everyone follows a fixed schedule and wants updates installed ASAP is frustratingly authoritative.
Updates try and fail to install when you don't have enough free storage. Is it that hard to just check first? It's this just a passive-aggressive way to remind users to free space? All I know is that it sucks.
There is a lot of bundled garbage, mostly links to app listings like candy crush on the Microsoft store. Just more clutter no one wants.
You can't opt out of all telemetry, which is a frustrating privacy violation.