Ash begins his Gym battle with Winona by sending out Grovyle against her Altaria. Grovyle takes out Altaria with Leaf Blade. Next up is Pelipper, a Water-and-Flying-type so Ash counters with the Electric-type Pikachu. Pelipper uses Steel Wing on the ground, and Pikachu uses Thunderbolt with no effect. Team Rocket arrives to steal Pikachu, but the force of Pikachu's continued Thunderbolt sends them blasting off.
It turns out that Pelipper is being grounded by its Steel Wing, making the Electric-type attack ineffective. Pelipper uses Hydro Pump, which Pikachu uses as a conduit to shock the other Pokémon. It results in a double KO.
Ash sends out Grovyle again, which is then finished off by Winona's Swellow. Ash counters with his own Swellow. Winona's Pokémon has the advantage since it has more experience battling in mid-air, especially with its Aerial Ace. After taking several hits, Ash has his Swellow use Wing Attack on the ground, which gives his Swellow a chance to counterattack, knocking out Swellow and winning him the Feather Badge.
Winona, the Fortree City Gym Leader, and Ash take their places on opposing elevated platforms above the battlefield. Before the battle commences, Winona prays to the wind, asking for strength. Zachary takes his position as referee and explains the rules of the match; a three-on-three battle and only the challenger can make substitutions. Winona calls out her Altaria, while Ash chooses Grovyle. Watching from the sidelines, May examines Altaria on her Pokédex and Brock warns that Altaria are part Dragon-type, making for a dangerous opponent. Altaria begins the battle with a Peck attack, but Grovyle counters with Bullet Seed and then jumps out of the way but gets pecked afterwards. Winona commands Altaria do another Peck, but Ash gets Grovyle to dodge it by climbing up a totem pole and doing a backflip. Altaria lands a direct hit with Dragon Breath, but Grovyle doesn't seem too affected by it. Winona again commands Altaria to use the same attack, but Ash gets Grovyle to jump out of the way. Winona is mildly concerned with Grovyle's Speed as continues to evade Altaria’s Dragon Breath. Grovyle then attacks with Bullet Seed again and hits Altaria on the back, with no ill effect. Altaria resorts to ascending even higher. Despite the increased altitude, Grovyle rebounds off a pole and slashes Altaria with a Leaf Blade. Grovyle holds the attack, pushing the pair directly into the battlefield. When the dust has settled, Altaria lies unconscious so Grovyle is declares the winner of the round. Ash's friends are impressed, that despite the type disadvantage, he managed to pull through. Winona also admits that she was caught off guard by Ash’s strategy.
Winona recalls Altaria and sends out Pelipper. Ash decides to switch out Grovyle and selects Pikachu. On the sidelines, Max points out that Pelipper is a hybrid Water/Flying type and Brock adds that Pikachu's Electric typing gives him the advantage. Pikachu starts off with a Thunderbolt, but the attack is proving ineffective as Pelipper grounds itself with Steel Wing. The electrical charge instead flows into the subterranean area of the Fortree Gym and electrocutes Team Rocket, who is wandering the tunnels aimlessly in search of Pikachu. The trio is subsequently blasted onto the battlefield, and they plot to catch Pikachu while he's distracted by the battle. The trio recites their motto and rush towards Pikachu. However the divining rods they're holding again become lightning rods when Pikachu attacks. Jessie, however, is thrilled to see the rods led them directly to a treasure, Pikachu that is, as she and her teammates are blasted off into the distance. Pikachu is keeping up his Thunderbolt, but Pelipper remains unaffected. After Pelipper strikes Pikachu with Quick Attack, Brock comes to understand Winona’s grounding tactic. Ash changes his strategy and orders Pikachu to use Quick Attack. Pelipper is still grounded and Winona commands it to use Hydro Pump. The force of the attack causes Pelipper to de-ground itself and Ash sees a chance to use a Thunder attack on Pelipper. Both Pokémon are knocked out.
Winona informs Ash that the day's perfect conditions have heightened the power of her Flying Pokémon before summoning her Swellow, an alternate color Pokémon, as her final Pokémon, while Ash chooses Grovyle again. Ash commands Grovyle to use Leaf Blade, though Swellow is seemingly unscathed by the swipe. Swellow is then ordered to use Aerial Ace, a move unfamiliar to Ash. Ash uses the jump-and-Leaf-Blade combo again as a counter move, but Swellow dodges it. Instead, Swellow lands its mark and carries Grovyle into the sky before tossing it directly into the battlefield to win the round.
Ash then chooses his own Swellow to battle. Winona is impressed by Ash's bold choice, so the two elevate their battle platforms to incredible heights for a real sky battle. The increased altitude brings a new challenge to match; unpredictable wind currents. Ash tells his Swellow to use Wing Attack and Brock thinks that this is a bad idea. Winona's Swellow strikes first, causing Ash’s Swellow to lose control of its flying as it begins to descend towards the field below. Winona orders her Swellow to repeatedly Peck Ash's Swellow. Then she orders a Hyper Beam attack, which its opponent dodges. However, she orders this attack a second time and it's a direct hit. Ash tells Swellow to dodge and counter with Quick Attack but Winona's Swellow is faster and dodges this attack, countering with Aerial Ace. The battle becomes an aerial chase between the two Swallow Pokémon. Ash gets some inspiration when he sees the dust being stirred on the ground by Swellow's rapidly changing direction in mid-air close to the ground. Winona orders another Hyper Beam. Ash orders Swellow to use Quick Attack and rush towards the ground. Winona calls for Swellow to use Aerial Ace. Ash then commands his Swellow to use Wing Attack on the ground, whipping up a disorientation dust cloud. The momentary distraction allows Ash's Swellow to launch a direct hit with another Wing Attack, knocking its opponent out. Zachary officially calls the match, declare Ash as the winner. Winona presents the Feather Badge to Ash against a beautiful sunset background, admitting that the battle truly showcased the trust between Ash and his Pokémon.