Dawn, Ash, and Brock arrive in Chocovine Town to find everyone in a festive mood. It's not the upcoming Contest that has everyone excited—it's the annual visit of the Phione! These rare aquatic Pokémon can be seen near town and are said to bring good luck. That night, Dawn and her friends take a Phione-watching tour on a submarine, unaware that the submarine is crewed by Team Rocket. Three Phione swim past the submarine, and one of them is so interested in Dawn's Buneary that it stays behind after the other Phione have continued on their way. After the tour is over, Team Rocket returns and snags that lone Phione in a net, but makes the mistake of letting it out for a swim in the town fountain. Phione uses Acid Armor to escape down the drain so it can search for Buneary.
Phione finally catches up with Dawn and Buneary as they train near the beach. Team Rocket has been chasing their prize Pokémon all this time, and they show up to recapture Phione... but they're promptly ignored, for Phione has bigger things on its mind. As soon as it sees Buneary next to Pikachu, it challenges Pikachu as a rival for Buneary's affections! Buneary steps in and challenges Phione itself: if Phione wins, Buneary goes on a date with it! Captivated by the drama, Team Rocket temporarily abandons their plans and waits to see what will happen.
Soon after the battle starts, Phione and Buneary both use Ice Beam against each other, and neither Pokémon seems to have the advantage. However, Buneary uses this opportunity to strike while Phione is distracted, knocking Phione down for the count. Dejected, Phione bids Buneary farewell and turns to leave. When Team Rocket tries to grab it, Buneary and Phione use Ice Beam again, this time putting Team Rocket on ice so Pikachu can blast them into the sky. Phione is still broken-hearted, but Buneary promises they'll battle each other again some day. With its spirits buoyed, Phione happily swims away and rejoins its Phione friends!
Ash, Dawn, and Brock have finally arrived at Chocovine Town, the site of Dawn's next Pokémon Contest. As they explore the harbor, Dawn notices a stand selling all kinds of Phione merchandise and begins hugging one of the Phione dolls. The man in charge of the stand informs the gang that Phione bring good luck to those who spot them and about Phione watching, where tourists can take a ride on a submarine and hopefully see the Phione up close. Dawn scans the stand's video recording of three Phione with her Pokédex. He mentions that every Coordinator that visited Chocovine and saw a Phione won the Contest they entered. Ash, Dawn, and Brock all decide to try their luck on finding the Phione. Ash asks Dawn which Pokémon she plans on using in her Contest which she responds with Buneary and Pachirisu. This discourages Piplup, but she assures Piplup that the other Pokémon look up to him and he should cheer them on.
That night, the gang head over to a submarine to go Phione watching, not knowing that it's being organized by Team Rocket. As they prepare to set off, James questions the consequences if they are unable to find any Phione. Jessie tells him that if they can't find any, then they'll just put Meowth in the water disguised as a Phione, which terrifies Meowth. As the gang and other tourists observe the aquatic life a trio of Phione rush past their submarine. The three of them begin swimming around the ship as the tourists praise them for bringing good luck. Team Rocket is also overjoyed at the chance of finding the Phione as Jessie unrolls a long list of things that she wants. The Phione denies her list of requests and simply sticks its tongue out at Team Rocket. As the trio continue showing off for the tourists, one of them takes a liking to Dawn's Buneary. Jessie then comes up with a plan of capturing a Phione and giving it to the boss to bring him good luck, hoping to get some good luck in return. The submarine returns to shore and as everyone begins to head home, the Phione from before surfaces already missing Buneary. Its friends call it back to the water when they notice how sad their friend seems that Buneary is gone. In its moment of sadness, Team Rocket appears and captures Phione in a net.
The next morning, Ash and the gang are doing their morning exercises when Ash then decides that it's time to train for his Snowpoint City Gym battle. Dawn then requests to do some shopping before training and promises that she wouldn't take long. Team Rocket is then seen sitting in the park admiring their successful capture of Phione when Jessie decides to let it swim in the fountain for a little while. They decide it's time to go, but Phione slips and slides from their clutches and uses Acid Armor to escape into the town's water system. Phione then travels across town through sinks and other types of plumbing in search of Buneary, startling a lady in her house who was cooking and the Pokémon Center's Chansey, who was washing her hands at the moment. It finally spots them as they are on their way to the store and loses track of them when they get on a bus. Phione was disappointed for a moment until Team Rocket spotted it and gave chase. Phione freezes them with Ice Beam, giving it enough time to escape. Meanwhile, Dawn is browsing through the store's supply of Seals, leaving Brock, Pikachu, and Ash to carry all her bags. She tells them that she's finished shopping and they can spend the rest of their time training.
The three head down to the beach and Dawn begins training Pachirisu for the Contest when Phione appears out of the water. It rushes over to Buneary and invites Buneary to come with it. Piplup walks over and happily greets Phione by shaking its fin, which Phione responds by freezing Piplup with an Ice Beam. Team Rocket's submarine appears from the water, and they tell Phione to return to them. Phione backs away from them and notices Buneary latched onto Pikachu. As Meowth translates, Phione, enraged with envy, challenges the perplexed Pikachu to a battle and the winner keeps Buneary for themselves. Pikachu protests, rejecting Phione's offer which only upsets it even more. Buneary puts herself in-between Pikachu and Phione. She declares to Phione that if it likes her, it should be battling her instead. If Phione wins, she'll go on a date with it down by the ocean side. Phione happily agrees and the two begin battling down on the beach.
For a few moments, both combatants try to see who's making the first move. Buneary does, rushing forward with Dizzy Punch. Phione uses Double Team, but Buneary continues by just going through all of them. Phione uses Supersonic, which Buneary dodges with Bounce and when she comes down aimed at Phione, Phione rushes into the ocean and vanishes with Acid Armor. The surprised Buneary can't find Phione, who then leaps high up into the air and uses Supersonic. It hits and Buneary gets confused, skipping down the beach in the opposite direction. Piplup jumps down from Dawn's head to help Buneary shake it off. Buneary turns around and goes toward Phione, who lands and fires an Ice Beam, but Buneary just happens to hop right then, missing her and freezing Piplup again (to Dawn's dismay). He manages to break out of it, giving enough time for Buneary's confusion to wear off. Buneary uses Ice Beam, countered by Phione's Ice Beam and as a chunk of ice grows bigger and bigger where the attacks meet, both try to outlast each other. The ice gets so big that they can't see each other, and Phione winces from the power drain. Just then, Buneary soars over the ice from Bounce with a flying kick, and Phione has only enough time to look up in surprise before her foot connects with its head. Phione ends up flat on its back, knocked out.
Brock goes over to make sure Phione is okay, and tells it that it shouldn't battle anymore (to avoid injury from wearing itself out). Phione, heartbroken, goes over and tells Buneary goodbye, and heads back to the sea. Jessie then claims that just because Phione has personal problems, that it's not getting away from them again. Buneary and Pikachu jump in front of Phione to defend it from Team Rocket. Buneary and Phione freeze Team Rocket with a double Ice Beam, and Pikachu sends them blasting off with a Thunderbolt. With Team Rocket gone, Phione heads back to its aquatic home, disappointed at its loss of Buneary, when Buneary calls out to it. Dawn realizes that Buneary hopes to see Phione again and have another battle. Phione then is overjoyed and waves goodbye to its new friends when its fellow Phione appear to welcome it back home. Team Rocket floats in their iceberg complaining that Phione brought them no good luck at all.