How to Get a Gyarados in "Pokemon FireRed"by Seth Amery ; Updated September 22, 2017
It's possible to find Gyarados while fishing the ponds of Kanto in "Pokemon FireRed," but you can also guarantee yourself one of your own. By buying a Magikarp from an eager businessman, you hold the key critter that evolves to the giant water- and flying-type dragon. These steps also apply to the "LeafGreen" version.
Travel to a part of the map that contains water you can fish in. Some examples include Routes 4, 6, 11 and 25, Viridian City, Four Island, Five Island, and Cinnabar Island.
Equip the Super Rod while standing next to the water. If you haven't received this upgrade yet, you can find it on Route 12's Silent Bridge, where the younger of the Fishing Brothers will hand it over if you tell him you love fishing.
Ride a water-type Pokemon that knows Surf -- found in the Safari Zone -- to fish in the middle of the water anywhere you want. There is a 15 percent chance of catching a Gyarados between levels 15 and 25.
Purchasing and Evolving Magikarp
Travel to Route 4 and enter the Pokemon Center. While most of the other guests don't have much to offer beyond odd small talk, the salesman in the upper left corner has a deal just for you: the "secret" Magikarp for the tune of 500 Poke Dollars. This Magikarp starts at level 5.
Use experience-boosting items to help Magikarp along. For example, Rare Candy found throughout the world immediately increase its level, bringing it that much closer to what it needs to evolve: level 20.
Position Magikarp in the front of your Pokemon list. Since he doesn't actually have any useful moves, you can immediately swap him out in exchange for your first turn during a battle. Doing this allows Magikarp to gain experience as a participant without having to fight.
Give Magikarp an Experience Share. This allows the Pokemon to gain experience without having to leave his Pokeball at all.
Leave Magikarp at a day care. Every step you take outside of the day care helps your Pokemon gain experience without having to keep it in your party.
Because Magikarp won't ever actually fight, you can bring him to fights against any level Pokemon; as long as you have another Pokemon that's experienced enough to take it down, Magikarp will get that much more experience for "defeating" such a powerful enemy.
Use Gyarados against fire-type opponents, but keep it away from an electric-type.
If you aren't far along enough to get the Super Rod and don't want to pay 500 Poke Dollars, you're guaranteed a Magikarp if you fish with an Old Rod in any water; follow the same steps for evolution.
Don't leave Magikarp in a fight where it could faint. If it faints, it won't gain experience and the fight will be wasted.