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.