After solving the mystery of the ghost of Pokémon Tower, Red goes on battling other Gym Leaders, as well as catching Pokémon, including a grumpy Snorlax he woke with his Poké Flute. He also encounters Team Rocket and meets their boss, Giovanni, and defeats them again. Charmeleon evolves into Charizard. Once he arrives in Saffron City, he and Blue help a woman, the secretary of the Silph Company's president, escape from a Rocket Grunt. She reveals that Team Rocket took over the Silph Company for the Master Ball, a Poké Ball capable of catching any wild Pokémon regardless of its health. Holding the president hostage, they threaten the scientists into working on the Master Ball day and night and using wild Pokémon as test subjects. Red goes near the front entrance with Blue and the secretary to find Rocket Grunts guarding it. Blue tries to opt out, but an enraged Red pins him to the wall. Blue tells him to take it easy and Red says that Blue cannot call himself a Pokémon trainer if he does not care about what happens to Pokémon. Blue tells him he will only take the secretary to the police and leave while Red goes alone to the building. Red frees the captive Pokémon and the scientists, one of whom gives him a Lapras. Red barges into the president's office, where he finds Giovanni and a Rocket Grunt forcing the president to sign a paper. Giovanni taunts him and prepares to leave. Red stops him and the two have a Pokémon battle, with Giovanni having the upper hand, and cause a blackout in the building. Before leaving, Giovanni tells a knocked-down Red that Pokémon are tools for business.
Afterwards, Red goes to fight three gym leaders and gets a Pokémon from the Karate Master. Red reads about Mew and Mewtwo in the now-deserted Pokémon Mansion. After defeating Blaine, Red goes back to the mainland where he hears about the power of the eighth gym leader. After Blue taunts him for not having gotten the eighth badge, Red goes to the gym and is astonished that the eighth gym leader is actually Giovanni, who was using the Viridian City gym as a cover for Team Rocket. Red challenges him. Giovanni taunts Red as Pokémon after Pokémon his Rhyhorn takes down. He begins to doubt his power and starts to remember how he was in the past. After a double faint, Red is told by Giovanni that Charizard will face Rhydon. Red says he wants it to be Charizard; otherwise, all his battles are meaningless. At first, this infuriates Giovanni, but then the Rocket Boss has a flashback when he sees Red throw his Poké Ball: he remembers that he used to throw it the exact same way when he was little, back when he had a Charmander and was happy with it. Giovanni then throws out Rhydon to fight Charizard, and the two Pokémon deal serious damage to each other, Rhydon gaining the upper hand. But just as Rhydon is about to finish the match with Horn Drill, Charizard uses Seismic Toss and rides on Rhydon, driving Rhydon to the ceiling, and throwing him down to the floor.
Surprised at the counterattack and his Pokémon fainting, Giovanni is defeated and presents Red his badge, but Red declines, saying that he does not need it from the boss of Team Rocket. Giovanni then disbands Team Rocket and tells Red to accept the badge from the Gym Leader of Viridian City. As Red leaves, Giovanni encourages him to move forward and, as for himself, decides to start a new life with Pokémon by his side.