My 2 cents
There has been much good advice on this thread. I will add a little.
First, make sure that the campaign will be fun for the players. If you are designing a new campaign, talk to the players about what they want. If you are running an existiing campaign, try to determine how to balance the wants of the players with the nature of the setting.
Self-consistency is also important. There can be light hearted moments in even a grim campaign, but there should be a sense that everything fits in that world. For example, a low-magic setting usually should not have an adventure where the player characters will face a radically different environment. Black Omega touched on this in how out of place a FR paladin might be in his Rokugan campaign.
Research is also important. If you are drawing from history, myth, legend, or an existing campaign setting, know what you are working with. It is incumbent on a DM to help breathe life into his world. Try to make it seem like a place that could exist -- given magic or whatever other elements you have in it.
Players should also have a sense that their characters are part of the world. They may have the opportunity to rise to the hieghts of power or may just be relatively normal people for their world. I prefer to give player characters a chance to shine.
Also, rewards and power should be earned by hard work. The players should feel that their characters have legitimately earned everything they have -- whether the character is a 1st level fighter or an epic level hero.
You may want to use slow advancement if that fits in to how you want the campaign to progress. If a campaign is a multi-year effort, perhaps the PCs should advance on how well they achieve their goals.
Always give characters a fighting chance. I have seen killer DMs who have actually scared people away from gaming. Provide encounters that make sense for their levels. If you wish to have powerful personages or creatures involved, do it in creative ways that do not mean instantly killing a party.
There should be a sense that the PCs are not the only people in the world. Have players create a background for their characters, including families, friends, mentors, communities, and maybe even rivals. (Just a few names and details might be needed at first.) Encourage role playing even at low levels. Most characters were not raised in the woods by wolves. Indeed, even a character raised by wolves would have someone to interact with: the wolf pack.
As for NPCs, try to make them distinctive. Different voices and mannerisms help. Some NPCs may wish to help the party, use them for their ends, or even destroy them. Having a few NPCs with complex relationships to the PCs can add some spice to a game. For example, a mentor to one of the PCs may help the party but could have a secret agenda. (This does not have to be a sinister agenda. Indeed, the NPC may be helping guide the party to something he believes is in their own best interest.)
Challenging stereotypes is a good idea. Not all elves have to be of the noble Tolkien variety or an aloof and sometimes arrogant creature. A dwarf can be cheerful, and optimistic. A half-orc or kobold can be kind and intelligent. Do not be afraid to try something different. Remember, people in the real world can be very complex. Someone who may seem arrogant and aloof may be doing so for a good reason. (On the TV series MASH, the character of Colonel Winchester (played by David Ogden Stiers) would often seem like an arrogant aristocrat. However, he had surprising parts of his personality that came out from time to time.)
Try to make sure that PCs have a strong motivation to adventure. Having recurring villains is always a good idea. Most of us have had people in the real world who tried to oppose us on some issues or seemed completely opposed to us. Perhaps even having a few friendly rivals to the PCs might be appropriate as well.
The main thing, I believe, is to listen to your players. Ultimately, a campaign is a shared effort. A DM may create a campaign, but the players help to tell the story and truly make it remarkable.