Sorry, a bit of a misunderstanding here. We're on the same side.
I'm not supporting Microsoft's charging people. I just also hate with some PC games where you'd have an online account with rankings or leveling (CoD, Starcraft 2, etc), you'd have to buy the game twice if you wanted a family member to have a separate account. Unless you want to share an account, you have to buy the game multiple times. In certain situations, XBL would actually be cheaper for some families. It doesn't make it right, only sometimes cheaper than other alternatives which aren't right either. I'm not defending their practices, only saying PC games need to have multiple accounts for a single copy of a game. Please do not mistake me for a fanboy.
I know all about MS and XBL, so telling me MS is greedy isn't necessary. Their update policy, DLC practices, paid avatar items, etc are stupid. However, the PC isn't perfect either and in some ways is getting worse. That's my point. The best system would be a combination of the best features of Steam, PSN, and XBL. Free accounts and all family members getting access to a game they own/share. Official dedicated servers for anyone to use (for consoles and PCs) and for PCs the added option to run your own. That would be excellent.
BTW, isn't it really strange that MS charges for XBL even though they almost never have dedicated servers? (I think L4D2 does) It isn't much of a service when it comes to the online play itself.
Also, the rising of microtransactions is awful. As is the dying feature that is LAN. =( I'm also more of a retail box, DVD, and CD key person myself but that's kind of dead nowadays.
BTW, about "only one person can play at a time," with some XBL games, you can play splitscreen online. If you had 4 people playing a Halo game online and each one had an account, all their online stats, ranks, etc would be stored separately.
Note: I type this on a high end homebuilt desktop. No one can say I don't like PCs =)