Gordon of the We Fly Spitfires blog wrote a post that has generated some pretty good discussion on this very topic. His original argument is that people don't seem to mind spending upwards of $70 on a singleplayer game that will deliver anywhere from 10-80 hours of gameplay, yet you will rarely find someone willing to pay $50 for an MMO to enjoy it for the same amount of time and then put it aside (insert unnecessary WoW tourist joke here).
By their very design MMOs are built for long-term committment. How many times have you been able to hit the level cap in an MMO and experience even half of what it has to offer in a single month of play? The goal of MMOs it seems is to suck players into a long-term committment and get them to either subscribe at $15/month or spend money on microtransactions. Semi-successul MMOs can be quite lucrative, so maybe we aren't expecting enough? That said, a game like GTA IV has worldwide revenues of $1.1 billion (or more) yet gamers don't expect to get as much enjoyment out of it over the long term as they do from MMOs. One wonders how a game like Guild Wars fits into all of this.