The Dungeon Master is the window through which the players see the world.
Much of the game's dramatic tension comes from the players trying to solve problems with incomplete knowledge of what is actually going on, and trying to find ways to fill the gaps in their knowledge by exploring the gameworld. Done right, this can make for an incredibly vivid and memorable expereince.
In my opinion, the game doesn't put enough emphasis on the control of player information. I suppose that's because it is a difficult skill to develop, and because it depends so much on the individual DM's playing style. Nevertheless, I feel it is one of the more important skills for the novice DM to have in his mental toolbox.
And it's all too easy to give out too much information even if you're consciously trying to avoid it.
I remember one game session I was DMing that revolved around an unusual monster that was terrorizing the local village. I was trying to conceal the true nature of the creature from the players, because the plot revolved around discovering the mysterious nature of the creature, and figuring out how to defeat it.
So I described the creatures physical form but I didn't tell them what it was. The players were fully engaged, asking questions, and coming up with theories, and having a grand old time digging into the mystery.
Unfortunately, when the players got into combat with the creature, I accidentally used the creatures name to describe it, and all of a sudden the players knew exactly what they were facing and how to defeat it. This let all of the tension out of the game, and led to a rather limp climax since the players were able to fast forward to the end of the scenario.
Giving out too much information is particularly problematic if you're dealing with players that have been playing the game for years. These players will tend to have the monster books memorized and will usually have a plan for dealing with anything they come across. This can lead to jaded players and boring games because the players have too much power from their accumulated knowledge.
To make the game interesting and keep players on their toes I use the following strategies:
A) Don't tell the PCs exactly what they're up against. Let them figure it our for themselves.
Give the players vague descriptions of the monsters they meet, but don't use the monster's name. Instead, tell them what they see, hear, smell, etc, and let the players come up with their own conclusions (which may be better than your own!). Players may recognize some common creatures from past experience or from folklore, but much of the things they come across will be alien to them. This is a good thing.
If my players want more information on a creature they just met, they'll have to do some research on their own. This is a good way to get your PCs to talk to the locals, or visit libraries, which makes the gameworld feel more real, and which makes the players feel like they have a larger stake in it. It's also an opportunity to give out false or misleading information, or to introduce a new adventure hook.
B) Change your notes.
For example; Instead of having a monster entry that says "Ghouls" change the name to "Flesh-Eating Corpse". This gets you our of the mindset of thinking about you monsters as a DM, and puts you into the mindset PCs by telling them what they see.
It also introduces doubt about the creature's true nature. These things might be ghouls, but they might also be flesh eating zombies, or something else even more sinister. But the bottom line is that the players won't know. They won't have the comfort of knowing that they are up against the same familiar monsters they've seen for the last several years. And that uncertainty raises the dramatic tension of the situation and makes the adventure more exciting.
This also makes it a little easier to avoid accidentally using the monster's real name during the game and spoiling the surprise for your characters, like in the example shown above.
C) Change the monsters themselves.
After a few years, the same old monsters can get pretty stale. Changing the monsters' abilities keeps things fresh and keeps the players on their toes. For example; instead of paralysis, maybe your ghouls have a "blood frenzy" that doubles their attack if a wounded character is present. Their sensitivity to blood might also increase the chance of a wandering ghoul attack when characters are wounded.
You can also keep the rules the same and just change the looks, ecology, or background. Maybe your hobgoblins are based on ancient Sparta, and have a pebbly, toad-like skin, in shades of green and brown. The rules stay the same, but all of a sudden, the tone is radically different.
You can also change the names. Maybe your re-imagined hobgoblins call themselves Therions and are the remnants of a once mighty people, looking to reestablish the power of their lost empire. Now you've got something really fresh and interesting that your players won't see anywhere else. And all you did was make a few measly changes to the hobgoblin entry.
Of course, there's nothing to say you can't got further and just make your own creatures from scratch. It's more work than just slapping a new skin on an old monster's stats (as in the previous example), but it makes the gameworld feel that much more exciting when the players realize that they are dealing with completely unfamiliar creatures.
A pleasant side-effect of changing the creatures up is that the players can't argue the rules with you if you're not using the rulebooks. But they'll also be less likely to argue if they're looking at something mysterious and exciting, instead of the same old shit that's been around for 30+ years.
And if you do decide to trot out an old favorite, the players will have more appreciation for them, since it's a familiar face in a strange crowd.
Who knows, your players might even be happy to see a notoriously bad monster like a flumph. You don't need to tell them that in this universe flumphs are chaotic evil and capable of shooting small lighting bolts. Let them find out for themselves...