Microsoft aren't giving away Windows 10, and even forcing it on people who don't want it, from the goodness of their hearts. They're giving it away to lock people into Windows 10 so they can make money, be it from their app store or subscriptions, or some other kind of rent-seeking behaviour. They know Windows is rapidly losing its relevance in the modern world, and need some kind of lock-in to keep people paying them.
And, like I said, I'd happily upgrade the XP machine if it was free. But I'm not paying $120 to do so.