If you're playing a game where you don't use legendaries for in-game though, you might want to use them as a slave... I like to have different Pokés in my party for every game I play, so my favourite Pokés end up being slaves just so I get to use them and see them every once in a while. It beats just sitting in a PC not being used at all I suppose. :)

ok well here are the ones i use ( not from best to lest or vise versa)
farfetched(cut and fly? OH YEA!)
biberal(can learn a mulititude of moves)
mew(:p muahahahahaha + one of the 2 pokemon that can learn every HM)
craindose
rampardose
sandslash
machamp
garydose(watefall gives it one of the very few advantages that it can wreck with a HM)
dragonite(1 of the 2 pokemon that learn every HM)
arceus(a third pokemon that learns all HM's In the 4th gen )
hydrigon
lugia
kyoger
latias/os

I found that Breloom, Tropius, or Bulba/Ivy/Venasaur can be used as a slave for FLASH, CUT, STRENGTH, and ROCK SMASH. Then just keep a water Pokemon that can use DIVE, SURF, and WATERFALL and then teach them a move from a different type so they can still be useful in a battle. The same goes with FLY, but I recommend Honchkrow or Sigilyph or another Pokemon that is more than just flying type. Honchkrow is great because he can learn psychic as a dark Pokemon.