I'm not a console gamer, so correct me if I'm wrong, but all online games are hosted on official servers, are they not? If so, that's a lot of servers that MS and Sony need to supply and maintain month to month.
In the PC world, when a game needs that kind of infrastructure and high quality servers, like World of Warcraft, there's a subscription fee. Console gamers don't pay any per-game subscription fee, do they? You just pay a single fee to MS or Sony, correct? You don't have to give your credit card number to a new company every few months, remember to cancel each subscription when you're tired of the game or renew when you're curious to try it again. It seems a lot simpler to me.
A lot of PC games can be played online without any subscription, but there are usually drawbacks. If a game is able to be hosted/served on one of the players' PCs, he/she tends to have a big advantage over the connecting players. Even without the unfairness aspect, it tends to not be a very high quality experience, and imagine if a lesser-powered console were to be acting as the server. If a game really requires powerful servers to host the games, then the publishers might provide some for free, but they tend to be busy or full. It's often up to the community to provide servers, such as through a provider. That means that someone has to pay for them, either out of pocket or monetizing them somehow. For example, some Minecraft servers utilize micro-transactions (selling of in-game ranks and cosmetic items) to pay for themselves.
Anyways, I can certainly understand how the subscription fee would be annoying and I might be annoyed with it, too, if I were a console gamer. That said, having high quality servers for every game and having only one account that pays for all of them doesn't sound so bad, either.