One of the most common errors I encounter, even among experienced players, is playing fast when the opponent is in time pressure (and you are not). It's very tempting to do so, and there are some advantages to playing quickly in those situations but, on the average, it's a big mistake, with a couple of clear exceptions. By the way, the following assumes you are playing a game with a small or zero increment or time delay. When your opponent has a large increment, then he's never in as severe time trouble as he could be in the zero/small case. Similarly, a sudden death time control, where the opponent has to make all his moves in a specific amount of time, would be more applicable than one where the opponent only has to make a few moves to make time control (but even here I've seen players erroneously playing fast).
The logic behind playing fast when the opponent is in time trouble is seemingly compelling: by playing quickly you don't give the opponent, who is short on time, the advantage of thinking on your time to find reasonable moves. Making this even more enticing is the logic that you have the time "in reserve" so that, although you are playing quickly too, you can slow down any time you want or need to, while the opponent never can. Seems like a great idea, no? No!
There are multiple problems with this approach which more than outweigh the logic to play quickly with the opponent in time pressure, both theoretical and practical.
The practical is just circumstantial evidence, but I have a lot of personal: I have seen players play unnecessarily quickly in their opponent's time trouble hundreds of times and it very rarely works. For each game where it helped the player win, I have seen many where it hurt them badly. Moreover, even the games where it did help them win might likely have been won anyway if they had played more deliberately. The balance: as I expected, it just doesn't work very well in practice.
The theoretical reasons for playing slowly are strong. One main reason is that you can't think nearly as efficiently on your opponent's time if you don't know what they are going to do. Even though your playing slowly somewhat helps the time trouble player compared to his not thinking at all if you play quickly, he can't use the time very well guessing at your move. For example, if you have several reasonable candidates, you can concentrate on the one(s) that you are likely to play, while the opponent has to guess and spend time on all the possible moves, or if he guesses and concentrates on one or two he could miss badly. The extra time is a big advantage for you in trying to figure out the necessary analysis on the move you are actually going to play - only you know what that is. Moreover, you don't know the opponent is guessing what move you are going to play and analyzing it clearly - he could just be panicking and waiting to see what you do(!) In that case, moving quickly is a double disaster, as you could have used your time wisely and he would not have at used it much at all!
But even if we assume the opponent is thinking on your time, and even if he happens to guess it correctly sometimes, you still get to think as long as you want as to how to refute his move, but if you move quickly you are greatly minimizing that opportunity. Remember, both sides are trying to refute the others' move and his time trouble, even in the odd moment he is guessing well, can often create moves that you might be able to refute with a little thought. Don't get caught up thinking that by moving fast you are just helping prevent him from refuting your moves; you are also greatly lowering your chances of refuting his.
The bottom line is that any player moving quickly on the opponent's time is actually giving the opponent a big handicap that negates that player's time advantage. It's a big advantage to have a lot more time, but not if you don't use it.
As I mentioned earlier, there are exceptions: two clear cases where making a move (or moves) quickly when your opponent is in time pressure is very wise.
The first is if you have a forced move, or a move that you can quickly calculate is clearly best. If you are sure about your move, then your opponent can likely be sure also, and playing too slowly on that move allows the opponent to assume your move with almost perfect efficiency, giving him more time to calculate a good reply than he could if you had made it once you realized it was clearly best or forced. Just because your move is clearly best does not mean the reply to it is easy, so giving the opponent more time to find such a reply is clearly illogical.
The other time playing quickly in the opponent's time trouble even though you have lots of time is if your position is otherwise resignable, but you are playing on only due to the shortness of the opponent's time. When your position is resignable, a random game is much more helpful to the player who is losing. Allowing your opponent to think in such a good position, even inefficiently on your time, will allow him a greater probability of finding at least safe, reasonable moves, which is all he needs. Although your chances of blundering skyrocket when you play fast too, the risk-reward ratio swings greatly in your favor since you are lost anyway, and it is the opponent that has everything to lose when both players move quickly. So, if you are playing on instead of resigning when the opponent is short on time, stop keeping score (if OTB, when you are allowed to stop keeping score when either side has less than 5 minutes left), and blitz out the remainder of the game. You've got little to lose.
But otherwise, when you have a big time advantage and the opponent is short on time, use your advantage wisely. If you don't believe me, set up a long series of games with a friend rated near your level with 20-2 odds (no increment) and see if taking almost all your 20 minutes is more helpful than also taking 2 and leaving yourself about 18 (or slightly fewer) minutes each game.
PS: in today's Chessbase.com annotations to the Ivanchuk-Aronian game in the 3rd round of the London 2013 Candidates, it states:
"31.c4 Rb6 "
Note the annotator said in blitz and bullet games it is not unheard of to play nonsense (fast) moves, not serious games. And, despite Ivanchuk only having 5 seconds left to make 10 moves, his opponent, Aronian, properly played slowly and took 5 minutes for his move!
PPS: In round 4 of the Candidates Grischuk got in time trouble against Carlsen. But on most moves, Carlsen took his time (and won), which made sense since on most moves he had several intriguing alternatives. In Susan Polgar's blog, the Pete Doggers' report on this game noted "It was just impossible to reach the time control without making mistakes, and Carlsen profited from these mistakes by not paying attention to his opponent’s time trouble too much."
BTW, I have seen strong players take fpawn's suggestion about "storing" 2-4 moves (see his interesting comment) with success. It's not so easy, and perhaps a little dangerous, for inexperienced players to try Michael's suggestion, but it does have some advantages if you are very careful in attempting to do so. Thanks for the comment, Michael! Always glad to hear from you.