I have been playing World of Warcraft for a couple of years. I am in a casual raiding guild on a PVP server. IMO, it is one of the three best games that I've ever played (along with Magic and Advanced Squad Leader). Still, there are a number of things that would make a better game. Here are my top three items.
1. Allow players actions to "change the world".
As a player, I want to feel that my actions make a difference. I want to feel that killing bandits makes the town safer, or that I'm helping to uncover some long, lost artifact. Its disappointing when you kill the bandit leader, only to see him respawn in 30 seconds.
I'm not sure what the correct answer really is. You want everyone to have a chance to experience everything in the game, but is it really necessary for everyone to experience identical content? For example, a quest chain might have four different final encounters, but identical rewards. That solution would require some coordination between players, since it might be weird if two players are on the same step of the chain but have different objectives. If done right, it could give the players the illusion that their actions have changed the world.
2. You are what you wear, i.e., character roles.
A lot of systems have very well defined character roles in accordance with the MMO trinity: tank, heal, DPS. A lot of classes end up shoe horned into a particular role. In addition, the set of gear and skill requirements for PVP and PVE can be quite different. I think it would be more interesting if classes had the ability to adapt to different roles in different situations. Perhaps it could be a mix of gear and/or skills that allow them to easily switch between two different roles. I think its perfectly acceptable that a character geared/skilled for a particular role should be superior to a character that is set up to be a hybrid. That's the "cost" of flexibility. The key is to have the value of flexibility offset its cost.
How would I like to see this implemented? First, I would make it very easy for players to switch roles. Perhaps a change of gear would work in a pinch, but you should be able to easily re-spec for a particular adventure. Second, I would give classes interesting abilities that can be used in different ways. For example, a magic using class might have a spell that transforms them into a fighter (similar to Mordenkainen's Transformation for old school AD&D types). They would be limited in what magic they could use, if any, but they would have "magical" armor to compensate, turning them into a poor man's tank. They probably won't be able to tank a high end raid boss, but they should be able to handle a lower level instance with some play adjustments. The system should reward the players for adapting to situations.
Thinking about it a bit more, it might be possible to get rid of the trinity altogether. I played D&D for years before I knew what the trinity even was. You might be able to design a system that rewards a balanced party as opposed to the formulaic one. Who knows...
3. Remove the "Hamster Wheel".
This is my biggest pet peeve of all. I can't stand the fact that you have to run the same dungeons over and over again to get everyone all of the items that they need. World of Warcraft has taken this to a new level, so pretty much everything requires some form of hamster wheel. In addition to the gear grind, it has money and reputation grinds. As a business model, its fantastic, since it keeps that subscription money coming. For players, however, it can be very tiring.
I do understand the desire for progression, where you have to complete dungeon A before you have a chance to complete dungeon B, and so on. Players also want to feel that their characters are continuously improving. I think the key is to provide enough end game content to a) keep people busy and b) feel like they are accomplishing something. Perhaps some variation of world building, or maybe politics, or some sort of epic adventures would provide for an interesting end game.
Anyways, these are three areas that I think can be improved in MMOs. They are not easy problems, but I do think that you can create a successful game if you can solve them.