Not sure if this has been brought up already, since I'm apparently further behind in this thread than I thought, but...
Microsoft makes no money allowing for free upgrades to their latest OS. I think the only reason they did it for 10 was to lure as many people as they could onto the new OS (plus also avoid the problems with people holding out until their current Windows 7 or XP installs rot), and they're extending it to Windows 11, but with significant hardware limitations, which brings me to:
Microsoft makes most of the money in the OS market selling Windows bundled with new PCs. By severely tightening the hardware requirements and limiting what currently-in-use hardware can run it, it will (in theory) drive large numbers of people to have to buy new equipment, and thus pay for new Windows installations.