The film continues the story from the original movie's conclusion. The Poseidon is still afloat, and the six survivors of Reverend Scott's team have been rescued. After sailing through rough seas, a tugboat captain, Mike Turner (Michael Caine), discovers the capsized wreck of the ship. Accompanied by second mate Wilbur (Karl Malden) and passenger Celeste Whitman (Sally Field), he heads out to claim salvage rights on it, as the tugboat 'S.S. Jenny' lost her cargo in the same storm that capsized it.
They are soon followed by Dr. Stefan Svevo (Telly Savalas) and his crew; Kurt (Paul Picerni), Doyle (Patrick Culliton), and Castrop (Dean Raphael Ferrandini) who claim to be Greek Orthodox medics who received the ship's SOS. The seven of them board the doomed vessel and soon become trapped after the corridor entrance to the cut-out hole collapses. The group with Turner also encounters more survivors; the ship's nurse, Gina Rowe (Shirley Jones), a wealthy passenger named Suzanne Constantine (Veronica Hamel), and war veteran Frank Mezzetti (Peter Boyle) who is searching for his missing teenage daughter Theresa (Angela Cartwright), which they soon find along with the elevator operator Larry Simpson (Mark Harmon) and as well as a brash "billionaire" named "Tex" (Slim Pickens). Later they find two more surviving passengers; the blind retiree Harold Meredith (Jack Warden) and his wife Hannah (Shirley Knight), who were waiting for rescue.
Water continues to submerge more decks and more explosions occur. Turner and his group find the purser's office, where Svevo decides that he and his men will continue their search for other survivors. Turner agrees and Svevo and his men leave in another direction. Another explosion causes the safe in the purser's office to fall through the floor and open, revealing gold coins (each one worth 100 times its weight in gold) as well as cash and diamonds. Turner and Wilbur excitedly gather it and start looking for another way out of the ship.
Unknown to Turner and the survivors, Suzanne was actually working with Svevo and sneaked a list containing information about a cargo of crates from the purser's office. She gives it to Svevo, but decides that she doesn't want to go through with his plan anymore. Svevo apologizes and orders Doyle to kill Suzanne. He shoots her, but she strikes him with an axe before she dies.
After climbing up a few decks, Turner and his group find Svevo and his men gathering a cargo of plutonium. Svevo reveals that his real intention of boarding the Poseidon was to retrieve his lost shipment of plutonium to sell on the black market, adding that he can't let Turner and his group go now. However, before they can kill Turner and his group, another explosion occurs, allowing them to escape through another cargo room full of cars, where Frank and another one of Svevo's men is killed during the shootout. Water floods the deck as Turner's group proceed to up to the next deck through a flooding elevator shaft, but Hannah falls into the rising water and drowns, while Turner loses his salvaged diamonds. Svevo and his one remaining henchman head back up to the ship's stern and make it out, where the rest of Svevo's team aboard his salvage boat cut another hole in the Poseidon's hull and attempt raise the plutonium crates from the cargo hold using a crane up to the hull of the ship, which is still above water but is slowly sinking.
In another section of the ship, Turner and the survivors exit the ship through an underwater side door, but due to shortage of scuba tanks, Wilbur (unknown to Turner and his group) sacrifices himself by swimming underwater and disappearing. Turner and Celeste swim to the tugboat Jenny and move it closer to the Poseidon as the remaining survivors swim towards it. Svevo's men see them and open fire and kill Tex, who willingly holds onto a bottle of champagne as he goes down. Turner's group makes it to his boat and they sail away. Water continues to flood the Poseidon and cause the on-board boilers to explode, which causes the cargo of plutonium to also do so. The Poseidon completely explodes, killing Svevo and his men.
On board Turner's boat, Turner accepts that his tugboat S.S. Jenny will be taken from him when they get to port, but Celeste reveals a diamond that she salvaged from the Poseidon. Celeste asks Turner, "Are you going to kiss me now?" and Turner replies, "I was going to kiss you anyway." They kiss and the tugboat Jenny sails away into the sunset with the survivors Gina, Theresa, Larry, and Harold.