Save-or-die effects are challenging.
SoD effects are not challenging because there is nothing that can be done to stop them, and success or failure hinges on the results of one completely randomized roll. You can argue that there are abilities that can negate SoD effects, but you must either spend a lot of money to get them (thus reducing your overall effectiveness in other areas) or be aware that what you are fighting can do those things. Even then, an item that might negate the effects of a symbol of death or finger of death spell will not work against other SoD effects such as petrification or poisons that deal high amounts of Constitution damage. They are not challenging because there is no skill involved: its pure chance, like gambling. You can sway the odds in your favor all you like, but since a natural 1 always fails there is always a 5% chance that you will just immediately drop death, regardless of other conditions.
Compare this to challenging encounters, once an encounter starts there are many things that can be done to help determine the overall success of the encounter: one roll will not determine whether the party succeeds or is defeated. Combat encounters are challenging because they largely hinge on player skill, with some chance thrown in.
Traps are challenging.
For most of the same reasons above, traps are also not challenging. Traps are hidden throughout a dungeon, not always in spots where you would expect (pit traps in the floor, for example). Sometimes "clever" DMs will think of an expected space, and put it somewhere else to trick the players (placing a pit trap 10-feet away from the door, instead of in front of it). Aside from the detect traps spell there is no passive way to detect traps, so players have to guess where one might be and make a Search check. If they find it, they must then make a completely randomized roll to disarm it: this again becomes gambling instead of player skill, as the trap will automatically be sprung if the player rolls bad enough. There isnt a way to determine the difficulty and make decisions to affect your results or to mitigate the impact of the trap.
To make matters worse, if you fail you are automatically denied a XP award as well. They are only worth XP if you successfully disarm them and if you fail, the trap punches you in the nuts and thats that. Better luck next time.
Preparing spells is challenging.
Having to select which spells you are going to use ahead of time isnt challenging because you all too often have NO idea what you are going up against in the day. A fighter will generally be very, VERY useful in every combat scenario (and a warblade even more so). If a wizard chooses badly, then he can become utterly useless throughout the course of the adventure. If the wizard chooses well, then he becomes effective.
As someone who has played a lot of wizards (and its my favorite class), I can say that I tended to leave a lot of slots open and choose mainly defensive magic or spells that didnt deal "common" energy types (primarily cold and fire). I tried to pick mostly force spells and things that would allow me to control combat without actually dealing energy damage. This makes it incredibly difficult to make a thematic spellcaster because if you go into an adventure with stuff thats the same energy type, you are useless. Leaving slots open only works so well, as it takes a lot of time to fill them up (and by then it might be too late).
Preparing spells shouldnt be a challenge anyway, as its a fundamental that the class is built on. It would be like saying that fighters should have a hard time picking their weapon because some monsters are immune to swords, or axes, or whatever.
Being useless is challenging.
The normal way that this is worded is actually, "part of the challenge of the game is that you arent useful all the time." Useless isnt challenging, it just means you are useless. Everyone else that has a purpose gets to have fun, while you do not. The usefulness of a character should not come from the class you chose or the class features you picked. Too often spellcasters end up being useless because they run out of spells, or because their array of spells is useless (particularly true of sorcerers and bards). If a character isnt being useful, then the player probably isnt having fun. So I guess being useless isnt useless so much as boring.
There is no challenge with having a useless character. It could be said that its challenging to avoid making a useless character, perhaps, but not ending up useless due to randomized chance.
Elements that only one character can overcome are challenging.
The other side of the coin is sheer usefulness. Situations that only one character can overcome are not challenging because its also essentially randomized. If an adventure has locks or traps, only a rogue is geared to resolve those challenges. If the rogue is dead, lacks sufficient skill, or the party just doesnt have one at all, then the game grinds to a halt. This is not challenging, its a combination of annoying and boring (again).
Similarly, if a "challenge" requires the use of a single, specific spell (such as dispel magic) that the party lacks, the same thing happens all over again. Most DMs will simply remove elements that their players are incapable of overcoming due to lack of resources or powers, but this can still happen in games where DMs are aware of their player's capabilities and planned accordingly, only to discover that they couldnt overcome it anyway (maybe due to character death, bad rolling, or because they didnt prepare that one spell).
Such elements arent challenging because its like a form of gambling: one randomized ability or skill is necessary. This is why in many DM resources it recommends allowing for multiple methods to overcome a challenge.
Dying is challenging.
Again, the way this should be worded is that, "part of the challenge of the game is that you can die." This is typically said in response to people suffering the misconception that you cannot die in 4th Edition. Death is a form of failure (it is not a challenge), but failure is not what makes a game challenging. The fear of failure is what keeps people from just sheathing their swords and ignoring the monsters or whatever. There are numerous ways to fail in a game, with death being the most extreme. This doesnt have to be the only form of failure (retreat, loss of resources, loss of potential reward) are all forms of failure that still allow the game to continue on while still giving the players incentive to try.
Character death cannot be challenging because it is not a challenge that can be overcome. It is just one of many forms of defeat.
So what is challenging?
Currently in 3rd Edition I would say that the most challenging parts of the game are solely combat encounters, or elements within combat encounters. During combat characters have various choices that they can make which generally fall into two categories: attack forms and maneuvering. Character placement can affect the course of combat, and how you attack (whether you are picking a spell or determing how much BAB you are pouring into Power Attack) are all tactical decisions. They typically use randomized rolling, but are greatly influenced by other choices you made (such as how high of a Strength you wanted, whether you are buffed up, and the weapon you are wielding).
This is a problem because D&D typically involves a lot of other dangerous elements that fall outside of pure combat: social encounters, for example, are not challenging because they hinge on a single roll that almost always can be incredibly easily made (especially by a bard).
Trivial things should not contribute to the overall success or failure of the game (such as race, feat, or skill choice). Trivial actions should also not (such as touching a wall or trying to open a door). A good challenge is one that the players can ascertain and make decisions to overcome as opposed to randomly punishing them for otherwise innocuous actions. Players who walk down a hall and get hit for 25 points of damage from a stone block might survive, but they arent going to be happy about it. Players that make a tiefling warlock and are driven out of every village because, "tieflings are evil" will similarly not have fun. It might be "realistic" but its not challenging.
This does not mean that you cannot use ambushes. This does not mean that you cannot use traps. In a good ambush encounter the players might take the first series of hits, but they can still react and retaliate: they arent getting hit and instantly losing, or taking damage only to find that the monsters arent there anymore (and that they cannot be followed or discovered). A good trap allows for everyone to participate in its destruction: fighters can try to block dart attacks while the rogue tries to jam the gears (and other characters try to hack apart other sections of the trap). Sure, you might take damage, but you can at least have a chance to react instead of the DM saying, "okay you take 8 points of damage and make a Fort save from poison," and that no, you wont get XP and that no, there's nothing you can do about it.
Since D&D is a game and not a reality simulator, the fun-factor is important. Too often people forget that really, you're playing a game and you shouldnt feel punished or angry for doing so.