Ash and his friends are walking along a forest path when a Wurmple suddenly drops down in front of May, frightening her. Ash scans it on his Pokédex and Max comments that it can evolve into Beautifly. May immediately runs off to catch, leaving her friends to chase after her. Max and the others soon catch up to her, but May is set on catching the Wurmple after seeing Janet's Contest performance with her own Beautifly. Brock suggests that they stop for lunch, but May runs off alone to catch a Wurmple. Ash is concerned for May, but Max replies that May will come running back when she gets hungry and Brock declares that the experience of catching her first Pokémon is an important milestone. In the bushes nearby Team Rocket are listening in, and decide that they will catch a bunch of Wurmple, and send one to the Boss, using the others to win all the Pokémon Contests.
While running through the forest, May comes across a group of Bellossom dancing. While she watches them, Team Rocket are looking for Wurmple nearby. James pushes gently on a tree to see if there are any Pokémon hiding in it, but Jessie tells him to do it properly, giving the tree a big kick. James is mildly impressed as a Weedle falls out of the tree. Jessie gives the tree another kick, making a Kakuna fall out. While Jessie continues to strike the tree repeatedly, James and Meowth ponder their find, commenting that Weedle evolves into Kakuna. They realize that Kakuna evolves into Beedrill just they are swarmed by some Beedrill. May hears their screams and looks around to see Team Rocket running towards her. They tell her to run as they race passed, and she soon joins the runaway attempt. The Rocket trio and May escape the stingers after falling down an embankment. May cries out after being caught up with the trio, leading them to perform their motto. However, the motto recital is cut short when May races off to follow after a passing Wurmple. Meowth interrupts his teammate’s tirade and orders them to follow after that Wurmple.
May reaches Wurmple first, so she calls out Torchic to battle it. Jessie sends out her Seviper which scares Torchic. May and Jessie argue over who gets to catch Wurmple. Jessie then orders Seviper to lash Wurmple with a Poison Tail, but Torchic uses a Peck attack to stop it in its tracks. Jessie is furious and orders James to do something, so he sends Cacnea into the fray. Both Pokémon prepare to knock Torchic out, but a Heracross comes out of nowhere and batters them away with its horn. Its Trainer approaches and comments that two-on-one isn't fair. Team Rocket retaliate by ordering both of their Pokémon to attack Heracross, but he orders it to use Fury Attack, blasting them off. May thanks the Trainer, who introduces himself as Franklin and offers to help May catch a Wurmple, to which she agrees. Meanwhile, Brock places a pot of stew over a fire to cook while Ash and Pikachu practice Iron Tail. A Trainer soon approaches, and suggests they battle, also introducing himself as Franklin. While the other Franklin and May climb a rocky cliff, Franklin explains Double Battles to Ash. He says that they have been an accepted form of battling in Hoenn for as long as he can remember. Ash accepts the challenge.
After Brock calls out the rules for their battle, Franklin sends out Yanma and Ariados and Ash sends out Treecko to join Pikachu. With both sides raring to go, Brock calls for the match to begin. Ariados uses String Shot, which is dodged, and Yanma whips up a Sonic Boom. Ash orders Treecko and Pikachu to dodge, but Pikachu finds his back leg caught by one of the String Shot threads. Ash has Treecko free Pikachu in time, and the pair narrowly avoid the oncoming Sonic Boom. Ariados and Yanma use Night Shade and Swift respectively, and both Ash's Pokémon dodge repeated attacks before Pikachu Thunderbolts Yanma. However, as Pikachu lands from the attack, he is struck down by a direct hit from Night Shade. Treecko reduces the damage by bumping Pikachu out of the attack. Ash then tells Treecko to use Quick Attack, forcing Franklin to focus his attacks on Treecko. Treecko dodges, allowing Pikachu to use Iron Tail on Yanma. Pikachu then tries to use Iron Tail on Ariados, but it fails, and Pikachu is knocked away by String Shot. Treecko Pounds Ariados with its tail, sending it flying into Yanma, who was still recovering from Iron Tail. Both Ariados and Yanma faint, so Brock declares Ash the winner. Franklin and Ash both check that their Pokémon are fine, and congratulate them on their efforts. Afterwards, Brock offers Franklin some stew.
May and the other Franklin are on the Wurmple hunt, when May brings back some Pecha Berries for the pair to enjoy. Franklin is impressed with May's confidence and self-sufficiency. He admits that he wouldn’t mind traveling with her and her friends, but he has always reconsidered his ambitions because of fear. Franklin then spots a Wurmple, so May sends out Torchic, which attacks Wurmple. May goes onto throw a Poké Ball at it, however Wurmple breaks out immediately. Franklin suggests that Ember would be a good attack to use so, after an Ember from Torchic, May catches Wurmple. However, when she celebrates, Team Rocket use a grabber to snatch it from her hand. Team Rocket performs their motto and Jessie proudly retrieves the Ball from the grabber. Franklin then sends out Heracross, which uses Horn Attack to pop their Meowth balloon, causing Jessie to drop the Ball in the process. May runs after it and catches the Ball. Though Team Rocket aren't done yet, with Jessie and James ordering their out their Pokémon again. Seviper starts to use Poison Tail, and Cacnea prepares to use Pin Missile. May tells Torchic to counter it with Ember, but Cacnea dodges and hits Torchic with Pin Missile. Though Heracross effectively blocks the oncoming Poison Tail with its hands. Franklin tells May to attack with both Torchic and Wurmple at the same time. May follows suit, sending out Wurmple only to realize that she doesn't know what moves it can use. Franklin suggests String Shot, which then completely immobilizes both of Team Rocket's Pokémon. Torchic singes them with Ember, before Heracross's Megahorn sends them blasting off.
Franklin informs Ash that he has just returned to the woods after doing some traveling. May, with Franklin accompanying her, runs up to the group to show them her new Wurmple, but the sight of two Franklins leaves the group baffled. The Franklin that was with Ash's group introduces himself as Forrester Franklin, and his twin, who was with May, introduces himself as Forrest Franklin. Forrest reveals that he has decided to travel with his Pokémon, and Forrester replies that he'll watch over the forest in the meantime. Brock suggests it is lunchtime. May sends out her Pokémon so that they can eat as well, but Wurmple polishes off all of the Pokémon food and Brock's stew, before walking over to May and falling asleep. Later, Team Rocket are hanging onto a tree branch on the side of a cliff. They start arguing, but stop when Meowth notices a Wurmple at the end of the branch. Jessie throws a Poké Ball and catches it, but as she retrieves the Ball, Wobbuffet pops out of his Ball, causing the branch to break from the weight, sending them plummeting.