I've never quite understood why the .NET runtime didn't ship with Windows. And Microsoft presumably controls Windows Update too, right? :thinking:
One reason why some have preferred not to ship with Windows is so that they aren't tied to the Windows release cycle. Not to mention, getting fixes into the monthly updates in a whole thing in and of itself.
A .NET runtime does ship with Windows . It is just often not the version being targeted by a developer which means the targeted runtime needs to be installed.
The new (.NET Core then .NET 5 onwards) runtimes aren't installed automatically.
But when you install them manually, they are serviced for security updates through Windows Update, so that you don't have to do that manually.