Lugia because it is physic and super affective against poison and fighting but don't use it against dark because they will kill it easily
The best way is battling the Elite Four.
try to defeat Red (Ash.) He's at the top of Mount Silver. You might want to consider training your Pokemon to at least level 80 before battling him.
Crystal is suicune but im not sure of the rest. Emerald it's rayquazza. he can beat the entire elite four by himself.
The best way to defeat them is to train your Pokemon. No Pokemon will be above level 50 or something like that. The 4 main elite four, their Pokemon are only in their forties.
red or the elite four if you beat red the elite four Pokemon will be jacked up or red again after you beat the elite four his Pokemon are the same levels as before
The best place to train Pokemon level 40 and above is at Mt. Silver. Since you cannot gain experience through multiplayer battling, the highest leveled place is Mt. Silver. Pokemon average level 40-49 in Mt. Silver, so it is a good place to train.
i know typlosion and ampharos are most picked so try those Pokemon and use dragonair
Cyndaquil has the most advantages over gym leaders, and the elite four. He is the coolest in my opinion.
Fire and water are the best combination to beat the elite 4.
The best thing to do is to continue to go through the elite 4 and give that Pokemon the exp. share.
"Best" is in the eye of the beholder. In terms of battling though, Mew is one of the best.
In the 3rd generation of Pokemon (Sapphire, Ruby, Emerald, Leaf Green, and Fire Red) it is easily agreed upon Pokemon users that a fire type of Pokemon is the best for advancing through the game easily. However, it is best to have a wide range of Pokemon types in your party because every Pokemon type has type advantages and disadvantages. So if your person your battling has a Pokemon that has a type advantage over you, (example: he has a water Pokemon and you have a fire Pokemon) switch out to a better one. This is very important for the elite four since each person has a different type of Pokemon.