The time has come for Ash to challenge Candice, the Snowpoint Gym Leader, for his seventh Gym Badge. Zoey joins Dawn and Brock in the spectator seats while Mr. Honcho from the Pokémon Trainer School referees this four-on-four battle. While Candice and Mr. Honcho are at the Gym, their Pokémon Trainer School students are on their own—the perfect chance for Team Rocket to steal the school’s Pokémon! Meanwhile, Ash sends his Grotle out to battle Candice’s Sneasel. Sneasel should have the advantage, but Grotle takes hit after hit and waits for just the right moment to strike, knocking out Sneasel.
Candice’s next Pokémon is Medicham, so Ash chooses his Staraptor. Medicham has some Psychic-type tricks up its sleeve, but Staraptor wins with its Close Combat and Brave Bird moves. While Jeremiah and the other school students spot Team Rocket and chase after the crooks, everyone in the Gym is focused on the next match-up: Candice’s Snover vs. Ash’s Gliscor. Even Gliscor’s Fire Fang can’t stop Snover, so once Gliscor is defeated, Ash sends in Chimchar. Chimchar’s Flamethrower is too much for Snover to take, but Candice still has her mighty Abomasnow.
Ash switches in Staraptor, only to see Abomasnow knock it out with one hit! Grotle is up next, but Abomasnow knocks it out too. Now Ash only has Chimchar left, and he needs a new strategy to beat Abomasnow’s speed and power. Finally, Ash has an idea: Chimchar can use all the ice on the field to skate around Abomasnow! That trick seals Ash’s victory, earning him the Icicle Badge! As for Team Rocket, Jeremiah sends his Skuntank to track them down and send them running with its powerful stench. But just as things are ready to wrap up, a new challenger appears: Paul is here, and he challenges Candice to a battle!
Ash, Dawn, Brock and Zoey leave the Snowpoint Pokémon Center, Ash excited to finally get the chance to battle Candice for the Icicle Badge. Everyone is in full support. At the Snowpoint Gym, his friends watch in the bleachers, observing the ice field full of ice boulders, like tiny mountains spread across it as the match gets underway. Mr. Honcho acts as the referee, announcing that the match will be four on four with only the challenger allowed to substitute. Brock predicts that it could be a long battle. Excited, Candice pulls off her sweater and ties it on her waist as Zoey notes how pumped up her older classmate is. Since both Candice and Mr. Honcho are at the Gym, Jeremiah has been left in charge of the beginner's class at the Trainer's school. Team Rocket watches through the windows, planning to make another attempt to steal the Pokémon stored there. They find the Poké Ball Room now securely locked with padlocks and chains.
Back at the Gym, Candice starts out with Sneasel. Ash summons Grotle, shocking Dawn and Zoey as Grotle has a type disadvantage. Candice has no clue of what Ash plans to do with Grotle, but highly approves of the unpredictability as Grotle fires an Energy Ball. Sneasel dodges and literally skates across the ice field, getting in close and hitting Grotle with Icy Wind. Sneasel circle-strafes Grotle with Icy Wind as Grotle falters only slightly. Brock realizes Ash and Grotle's strategy as Sneasel lunges forward with Fury Swipes. Grotle stops Sneasel with Razor Leaf, forcing it back before it leaps out of the way, landing on an ice boulder. Grotle uses Rock Climb allowing it to easily run across the ice. Sneasel fires Icy Wind but Grotle pushes forward, runs straight up the boulder and rams Sneasel, sending it flying and creating a crater in the ice where it fell, knocking it out. Brock points out that Ash took what Paul's Torterra taught Grotle and made it his own. Ash recalls Grotle for a well-earned rest as Candice excitedly deploys Medicham which Dawn checks with her Pokédex. Ash decides to exploit the type advantage with Staraptor. Meanwhile, back at the school, Team Rocket bypasses the locked door by tunneling into the room, swiping all the Poké Balls off the shelves.
Staraptor launches into a Quick Attack, but Medicham's Confusion stops the attack and sends Staraptor crashing into the ground. Only now does Ash remember that Medicham is not just a Fighting type, but a Fighting/Psychic type. Staraptor gets back up and launches Aerial Ace, but Medicham stops it by catching it by the beak, just shy of hitting. Quickly, Staraptor switches to Close Combat and hits. Medicham hits back with Fire Punch, and both are thrown down. Ash then has Staraptor use Brave Bird before Medicham can recover, crushing it into another crater, knocking it out (although Staraptor suffers from the recoil). Ash recalls Staraptor, everyone excited at his lead. Candice sends out Snover as Ash ponders his next Pokémon. Meanwhile, Jeremiah leads the students to the Poké Ball room, and when he opens the door all shocked at discovering the theft. Jeremiah rushes outside and finds Team Rocket emerging from the tunnel they dug. As they recite their motto, the students angrily cut them off. Team Rocket flees and barricade themselves in the storage shed that Zoey and Candice raised Zoey's Glameow in.
Ash decides to use Gliscor. Snover fires Razor Leaf as Gliscor dodges, retaliating with a Fire Fang to the arm, causing super-effective damage. Gliscor then roundhouses Snover with its tail and Snover hits back with Ice Beam, blasting it up and away, also causing super-effective damage. As Gliscor falls toward the field, Snover races forward and fires another, but Gliscor recovers and quickly dodges, lunging with another Fire Fang. However, Snover's Bullet Seed stops Gliscor before an Icy Wind sends Gliscor slamming into the wall, leaving it to faint while sitting in its crater.
Ash recalls Gliscor and summons Chimchar. Chimchar jumps across the ice boulders, dodging an Ice Beam and firing a Flamethrower, but an Icy Wind stops the attack and creates a steam cover, something Candice planned on when facing Fire types. Chimchar glances in all directions, trying to spot Snover's eventual sneak attack, but Ash tells Chimchar to listen for it instead, let Snover attack first and retaliate with Flamethrower. Chimchar closes its eyes and listens, until Snover' approach disturbs Chimchar's tail flame, and Chimchar looks up right where Snover comes out of the steam. Snover takes a swing at Chimchar, but Chimchar dodges and blasts Snover's back with Flamethrower until it crashes front-first into an ice boulder, knocking it out.
Ash now has a healthy lead, still with three Pokémon while Candice is down to her final one. Candice now summons her prized Abomasnow as her final. Chimchar fires Flamethrower, but Abomasnow simply stays put and fires a powerful Blizzard, not only stopping the attack but overcoming Flamethrower and knocking Chimchar into an ice boulder. Seeing Chimchar is going to struggle against Abomasnow, Ash recalls it. He sizes up Abomasnow as being big and heavy, so it shouldn't be able to move very fast. Ash decides to utilize Staraptor's speed and use Aerial Ace to take out Abomasnow in one hit. Staraptor goes into Aerial Ace, but Candice has Abomasnow use Ice Punch which not only slows, then stops the attack, but throws back Staraptor, leaving it to fall to the ground and knocking it out with one hit. Everyone is shocked at Abomasnow's power as Ash recalls Staraptor, and brings out Grotle. He commands a Rock Climb. Grotle immediately charges Abomasnow, but Candice has Abomasnow use Wood Hammer. Using its entire body weight, Abomasnow punches Grotle's head straight down into the ice, knocking it out instantly.
Ash is now really starting to feel the pressure against the power of Candice and Abomasnow as he recalls Grotle and brings Chimchar back out, his final chance to win the match. Chimchar launches a Flamethrower, but Blizzard once again stops that offense. Chimchar dodges the oncoming Blizzard and then hops backward to put an ice boulder at its back. An Ice Shard destroys the ice boulder as Chimchar leaps forward to dodge. Chimchar continues to dodge Abomasnow's onslaught, throwing up chunks of ice everywhere. Ash knows he needs to use speed as the chuckling Abomasnow advances on Chimchar. When he notices Abomasnow crushing a chunk of ice underfoot, he remembers how Sneasel was able to move about the ice quickly by skating. Ash tells Chimchar to jump on top of the ice boulders, and although Chimchar is surprised, it trusts Ash and obeys. Chimchar leaps from boulder to boulder until Abomasnow destroys one with a punch, sending chunks skittering across the ice field. Ash has Chimchar jump onto a big chunk, turning it into an improvised snowboard. Though wobbly at first, Chimchar gains control and uses intact ice boulders as half-pipe walls to maintain speed. It skates around Abomasnow, dodging attacks and launching Flamethrower attacks into Abomasnow's flank. Abomasnow eventually gets frustrated as Chimchar jumps off the ice board and over Abomasnow's head, letting Abomasnow get close. Ash tells Chimchar to finish it with Flame Wheel. Chimchar charges forward quickly and hits Abomasnow's chest dead center. It continues to spin forward as Abomasnow goes flying backwards, its feet sliding across the field. Abomasnow regains its footing and grabs the Flame Wheel, creating a huge steam cloud. Through the steam, Chimchar sees Abomasnow and prepares for another attack... but there's no need as Abomasnow has been knocked out. When the steam clears, Abomasnow tips forward and hits the ground.
Mr. Honcho announces Ash as the winner as he and his Pokémon celebrate, everyone congratulating Ash and Brock proclaiming what a great battle it was. Back at the school, Jeremiah is sick of waiting for Team Rocket to emerge from the shed and decides to send his Skuntank to squeeze through Glameow's old pet door, using its Stench Ability to gas them out. They literally run through the wall and Team Rocket are sent running off again without the Poké Balls.
Outside Snowpoint Gym, Candice hands Ash the Icicle Badge. Ash holds it up as he and his Pokémon celebrate. While Dawn gives Ash his jacket, everyone is shocked by the sudden arrival of Paul, who challenges Candice to a Gym battle.