I know that 99% will disagree, but I have to go with Dragonite. :3 Just my absolute favorite Pokemon, and i have one with almost perfect IVs and stats. 31/31/31/31/30/31 ... friend hatched them forever until he got one, which he ended up giving to me. So it's my toughest Pokemon on my team, I think.
And Dragonite is just so cute in the anime (and strong!) so it always has a special place in my heart.
I guess I just got really emotional and really didn't answer your question.
They're all really good. I prefer Dnite, but most people will argue Salamence is much better. Never had a Metagross, but I've come across some very well trained ones, and it's a beast. Tyranitar is a good one, but I think it's easily taken out (from my experiences). Honestly, I dunno.