I started to reply to syncaine's recent post but as usual it ballooned out, so I am just going to paste it here. Paraphrase: syncaine debates the pros and cons of having levels in MMOs, and is undecided.
You definitely have to gradually introduce people to their class. Starting off with 2 skills and acquiring them as your brain can handle them, rather than lumping you with everything all in one go, is a must. This is by necessity an exponential progression - we can handle several things to start with, but need a bit more time each level to adjust to our new set of skills before progressing to the next level.
However, leveling is boring once there is too much time in between levels, as there are no new shinies to play with. The exponential feature really starts to kick in (and suck) in terms of time investment at a certain point. It also starts to suck because the developers simply run out of ideas for what your new skills can do.
They solve this by either
a) letting you advance an entire other skill tree concurrently. This carries the risk of having more and more overpowered combinations of skills, and also provides the character with too many options to choose from at a given time; or
b) make use of "power creep", ie give you a skill that does 10% more damage, which is really meaningless because they simply gave the monsters 10% more HP in the next area
c) give you crap skills that nobody would ever use (of course people still use them, because they sound cool or something. This ruins their game experience (makes them suck), and my game experience (makes my group suck).
The main reason that leveling sucks though, is that the farther down the leveling path you get, the less and less likely it is that you're going to be able to group with a given player, which presents a major barrier to grouping. Which is the whole point of an MMO in the first place.
So, I think the leveling process should stop at a certain point. This point is where you are no longer gaining new, useful functionality after leveling up. The leveling process should take long enough that you get used to all your skills, but not so long that it starts to drag.
After this point, progressing through the game should be rewarded horizontally, and with fluff. ie, players unlock more and more respec options, as well as cool titles, emotes, armor/weapons, housing, etc, to stroke their e-peens with. I think Guild Wars struck a good balance in all these ways.
However, syncaine didn't like Guild Wars. This could be because
a) He is an MMO hampster on the great MMO hamster wheel.
b) There are no elves/orcs etc. Many people find this subconsciously unacceptable.
c) Most likely: there was no persistent world to run around in. The towns are like lobbies to group up with people, and then everything is instanced.
I'd say like I usually do that Guild Wars 2 will save us all since it will have much more persistence, however, I found out recently there's talk of the level cap being 100, or *possibly limitless*, which is of course epic fail /facepalm.
Another cool system was found in Eve. In this game smaller (cheaper) ships are more agile, and so the very large ships can't hit them. This allows "noobs" with small ships to contribute in battles in ways that the people in larger (more "advanced") ships can not, allowing everyone to play together. The game definitely makes use of horizontal progression - a different ship is like a different respec. The only problem is of course the time-based skill grind. If they removed this and turned it into a fantasy game, I would be very happy.
However, this conflicts with the bottom line, which is of course making the most money out of the game. As long as we see developers ruled by this notion, our games are going to continue to suck.