- Magikarp → Gyarados 
You can catch a Gyarados in the wild (by fishing with Super Rod) on Vermilion City in Pokemon Fire Red and Leaf Green. You can also fish with Old Rod and catch a Magikarp which will evolve into Gyarados at level 20.
When you catch a Magikarp, once it evolves Gyarados is much more tougher and stronger, than if you were to catch it already evolved. Let it learn Bite and teach it HM surf when you get it in the Safari Zone; then buy Hyperbeam available for sale in the Celadon City Department Store and he will be a lean, mean fighting machine.
In Ruby, Sapphire and Emerald Magikarps are also common too, by fishing. They are definitely not too hard to find. They evolve the same way and learn the same attacks.