I don't understand why people have so much trouble with this. Do the math sometime and you'll realize that paying to play an MMO is cheaper than almost anything else.
You go to see Harry Potter this weekend with a drink and a popcorn, you've payed for a month of an MMO. How about dividing out the amount of time you invest into an offline game vs its cost.
If you played FFXII for 300 hours and payed 50 bucks for it, then you're paying about 16 cents/hour.
If you only played FFXI for 2.5 hours a day on average, that would be about the same cost.
Most games you play, especially FPSs and platformers you may only get 10-20 hours out of. You're getting a hell of a lot less for your money any time you pick up the majority of single-player games.
On top of that, you're getting new content with decent regularity.
Not to be rude, but I figure this is more a complaint from younger people for two reasons.
1 - It's easier to talk mommy and daddy into buying a game one time than paying a fee.
2 - Young people aren't used to paying for things that have no solid real-world representation like car insurance, rent, etc. I sure wish I could pay my electric bill as a one time thing and not pay for it monthly.
Like someone already mentioned, you're paying for continuing development of your game in addition to paying to keep the servers running 24/7.