The movie starts with the two hundred foot tall Poseidon, named for the Greek god of water, cutting through the ocean. On one of its thirteen decks, we see Dylan Johns (Josh Lucas) running for an evening workout, stopping when he reaches the top to enjoy the last sunset of 2005. Meanwhile, in one of the eight hundred cabins, we see Jen Ramsey (Emmy Rossum, aka the most beautiful actress in Hollywood) making love time with her boyfriend/fiance Christian (Mike Vogel) when they are interrupted by Jen's father, former firefighter/mayor of New York Robert Ramsey (the indomitable Kurt Russell). Christian immediately starts treating him like a king, but he tells Christian, "Stop calling me sir....it makes me feel old." He also implies that the kids are having sex, which Jen flatly denies before stomping off to her room. Down below, in the kitchen, we see an attractive girl named Elena (Mia Maestro) hunting for her friend Marco Valentin. She finds Marco (Freddy Rodriguez), a waiter on the ship, and we quickly learn that he is smuggling her across from Europe so she can be with her sick brother in New York. He gives her some food from a nearby plate, but he tells her that she has to stay in the cabin. Elsewhere, we see bisexual architect Richard Nelson (Richard Dreyfus) calling his boyfriend, but he only gets the answering machine, and we can tell that his boy recently broke up with him.
That night, we see Captain Michael Bradford (Andre Braugher) welcoming everyone to his ship. He tells them a little about its namesake and then introduces musical act Gloria (Stacy Ferguson from the Black Eyed Peas). While she performs we go up a few decks and see Dylan and Ramsey playing a game of Texas Holdem with two others, generic guy five and Lucky Larry (Kevin Dillon). Jen and Christian come up to say hi to Ramsey before heading over to the nightclub as he's nearing a fifty thousand dollar betting mark with Dylan (Larry and guy five folded). Ramsey asks Jen to button up at least one more button so the twins aren't hanging out, and as she does she cries out, "So Dad, tell me again how good a pair of fives is?" or something equally devastating. Ramsey looks up at Dylan, who is grinning evilly and saying, "All in." Over at another table, we see Nelson telling some of his friends the story of his breakup and his ex's quick turnaround while he orders a five thousand dollar bottle of champagne for the table just before excusing himself to get some air. Meanwhile, we see Dylan walking away with his winnings when he bumps into a kid playing with his PSP (plug plug). The kid is Connor James (Jimmy Bennet) and he takes an immediate liking to Dylan, as does his mom Maggie (Jacinda Barret) who quickly comes up looking for him. Meanwhile, we see Jen and Chris in the nightclub partying like crazy as Elena picks her way through the baot. Meanwhile, in the pilot room (forget the technical term), we see the officer in charge get a feeling that "Something's off," when the instruments suddenly detect a HUGE tidal wave coming towards the ship (Nelson, who was about to jump overboard, also sees this and it ironically makes him rethink the suicide). The officer puts in an order to turn hard to starboard in order to avoid a direct hit (important), but it doesn't matter. The wave hits the ship, sweeping millions of people overboard (some of whom were in the on-deck pool), crushing others, flash-frying some, electrifying a few, and in general causing all sorts of hellish chaos.
After people have calmed down some and the general chaos has subsided, Captain Bradford calls for order and assures the people that as soon as the wave hit, a signal went off and rescue teams are on the way. As he's talking, Maggie notices Connor stuck on a piano on the ceiling (it was bolted down). Ramsey comes over and with the help of a few others creates a slide out of a curtain for Connor to fall into. Meanwhile, we see Jen and Christian in the remains of the nightclub, where one of the spotlight girders has fallen on Christian, trapping his leg. Jen tries to get it off but is unable to. Looking around, she spots Elena and gets her over there, and the two girls try again. Meanwhile, Ramsey has asked the captain to search for Jen but has gotten nowhere. Meanwhile, Dylan has been spotted leaving by Connor, and Dylan explains that they will probably be able to get out through the propeller area. Eventually, he finds himself joined by Nelson, Ramsey, Maggie, Connor, and Marco, who is serving as the map of the ship. As they leave, we see hatches seal behind them as the captain mutters, "God be with them." On the other side, the group picks their way through a messed up hallway and serving area, eventually coming to a service elevator that should get them where they need to go. To cross the shaft, they grab a flimsy metal table and use it as a bridge. Dylan tries to get the doors on the other side open, but they won't budge. He notices the doors on the next level "up" are open, so Nelson volunteers as a stirrup to get him up there. Just as Dylan finishes getting the upper doors open, an elevator "above" them starts coming "down" and it becomes a race to get everyone through. Finally it's down to Nelson and Marco. The table falls, and Marco grabs onto Nelson's leg. Realizing they can't save both, Dylan orders Nelson to kick Marco off, and Marco falls all the way to the "top" of the shaft before being crushed by the "rising" elevator. The group recovers and heads on.
Back in the nightclub, Elena and Jen are still struggling when they are approached by Lucky Larry. He repositions the rod they're using for leverage and they are able to get the girder off of Christian just as the other group arrives. Ramsey and Jen reunite, and everybody is introduced (except for a very drunk Larry). They escape via a door that has a flash fire behind it but is defeated by Dylan and Ramsey, and they end up at the elevator in the main concourse of the ship. They use the fallen elevator as a bridge to the other side. Most of the group gets across, but when it's Lucky Larry's turn, he decides to do it without help. Just as he's in the middle, something blows up and a giant chunk of floor comes through, destroying Larry and the bridge and causing a literal waterfall of fire (oil). Ramsey says to find another way across, but Dylan grabs a nearby firehose, dives into the water, swims across, and climbs up to where the others are, making a kind of bungee bridge. Ramsey still wants to find another way, but Jen is insistent on this way and shows him the ring finally. He settles, but then she ducks out and comes back with a little hook for him to hang onto. They slide across together with her piggybacking on him while he holds onto the hook, and the group heads off once more.
Back in the concert area, we see people milling around when suddenly the captain notices the glass cracking. He gets about five seconds to digest this when suddenly all the windows burst open and water comes pouring in, drowning everybody. Meanwhile, Elena, Ramsey, Nelson, Jen, Christian, Dylan, Maggie, and Connor have found a shaft that they think might lead "down" to the next level. Ramsey checks it out and says it's good, and eventually they all get in there, despite Elena's claustrophobia. While they're climbing, Ramsey congratulates Christian just as they reach the locked exit from the shaft. Ramsey tries to get his fingers around to unscrew it, but he can't so he calls up Connor to unscrew. As Connor is climbing, Nelson suddenly slips on a part of the vent that had buckled. Elena freaks out, especially since the water is rising, but Dylan manages to convince her to push Nelson out. She does so just as Connor gets the last screw out. They narrowly escape the vent, although Dylan is nearly drowned. They end up in some kind of ballast chamber, and Dylan realizes the only way out of it is to flood the chamber so the vent on one side of the room opens. They let the water in and after a while, the vent opens and they swim for some stairs. On the way though, Elena gets caught on something and manages to cut herself pretty badly. By the time anyone notices she's missing and gets back to her, she has drowned. The group lays her to rest and moves on. Meanwhile, we see in the control room that the remaining tanks are filling up one by one, meaning the ship is getting that much closer to going under.
Back with our remaining heroes, we see that the area they need to go get out is currently under more water than they could swim through. Discouraged, they regroup and try to think of another way out when suddenly the ship starts going vertical. They realize that this means the previous way that was blocked might now be clear, and they head that way when Maggie notices that Connor is missing. She and Dylan search for him while the others secure an exit and find him trapped behind a screen in an area that is rapidly filling with water. Dylan dives under and gets him out, and the trio rapidly make for the other four, who have made it into the engine room. Nelson sees the door to the propellers and opens it, only to get blown back by the hurricane-force winds the still-active propel lor is generating, While Jen looks after him, Christian proposes throwing something in there to block the propellers and get them to stop, but Ramsey points out they'd need to either stop them manually or get them turning the other way, which makes the two argue about who should make the hundred and fifty foot swim to the underwater control room. Christian says that he has better lung capacity so he should do it, and Ramsey reluctantly agrees. Christian moves to say a teary goodbye to Jen, and while he's busy with that, Ramsey dives in and swims off. The other three arrive and are told what Ramsey is doing as we see Ramsey get in the control room. He finds the engine stop button, but it's broken. He starts running out of air, and with his last breath manages to find the button to make the propellers turn the other way.
(At this time we will pause to honor the memory of Kurt Russell.................okay we're done)
Back in the propeller room, everyone notices that the blades are now turning the other way. Dylan moves to throw a nitrogen tank into the blades to get them to stop, but the tank gets caught crosswise in the narrow door frame. He manages to push it through, and there's a huge explosion that blows out that pair of propellers on both sides of the ship. The remaining survivors come up and pick their way through the tube, stopping at the drop to the water. Dylan says they have to jump, and soon everybody is in the water and swimming for a nearby lifeboat. They get in just as the ship goes under, and Jen screams at them to row like crazy so they don't get drowned in the backwash. They manage to escape it, and Dylan fires off a flare gun to let any rescue teams know where they are. After a wait, a pair of helicopters arrive and pick the six survivors from the water, much to everyone's relief.
A rogue wave hits the Poseidon, capsizing it.
Robert Ramsey (Kurt Russell) wants to go look for his daughter Jennifer and her boyfriend, Christian, who are in the disco. Robert, Dylan (Josh Lucas), Nelson (Richard Dreyfus), Maggie (Jacinda Barrett) and her son Conor decide to look for a way out, despite the captain telling him that they are safest in the ballroom and no one should leave. The group finds Jennifer (Emmy Rossum), Christian, Elena and Larry and proceed to make their way down to the propeller tubes, which are now actually above them.
Back in the ballroom, the water pressure causes the windows to implode, filling the ballroom with water and killing everyone.
Along the way, they lose Larry when a ceiling collapses and Elena drowns after hitting her head.
When they get to the propeller room, they realize that the propellers are still running, and their direction makes it impossible to disable them. Facing certain death, Robert swims to the underwater control room, but the emergency shut off button is broken. Right before he drowns, he reverses the propeller, allowing the others to disable it by jamming it. The group jumps ship, finds a life raft, and sends off a signal flare.
The movie ends with rescue helicoptors spotting them.