Newcastle United made it eight unbeaten home games in the Premiership to move into ninth position in the table.
They came from falling behind to an early Craig Bellamy goal to seal victory with an Obafemi Martins equaliser and Nobby Solano's winner from the penalty spot.
The match had been in some doubt because of incessant rain that had not let for 12 hours and was only given the go-ahead following a lunchtime pitch inspection from referee Mark Halsey.
USA central defender Oguchi Onyewu was handed his home debut and came up directly against former United favourite Craig Bellamy and one-time Newcastle target Dirk Kuyt.
Glenn Roeder left Damien Duff out of the side and Republic of Ireland striker had to settle for a place on the bench.
After a lengthy run at right-back, Solano was instead named on the right side of midfield with James Milner switching flanks.
The injured Stephen Carr was replaced at right-back by Steven Taylor, who was on the other flank last week against Fulham, a position this time going to the fit-again Celestine Babayaro.
Bolo Zenden, whose season has been hampered by injury made a welcome return to the Liverpool starting line-up along with Momo Sissoko.
Without a clean sheet for 15 games, Newcastle saw that unwanted statistic increased after only six minutes by Bellamy.
A Steve Harper clearance went straight to Jermaine Pennant who charged forward to tee up Bellamy for his eighth goal of the season.
United were caught again after 12 minutes with Taylor this time the culprit when he was robbed by Bellamy to play in Zenden, who should have made it 2-0.
Newcastle drew level with their first shot on target after 26 minutes. Daniel Agger tried to hold off Martins and Jose Reina drove his clearance against his own defender to leave Martins in the clear to slip in 12th goal of the season into the empty net.
Bellamy then had two more great chances, one of which hit the bar.
The silky skills of Kuyt almost unlocked the Newcastle rearguard after 53 minutes when he seized upon a Zenden pass in the box, cleverly slipped Nicky Butt's lunge, but placed his finish wide of Harper's far upright.
Playing a counter-attacking game Newcastle sprung the Liverpool defence through Kieron Dyer on the right and the England man turned Steve Finnan, but was unable to find Martins standing in oceans of space.
Newcastle stormed in front after 70 minutes from the penalty spot. Martins was again involved, slipping the ball into the path of defender Taylor, who weaved his way into the area before he was tripped by John Arne Riise right in front of referee Halsey, who pointed straight at the spot.
It was left to Solano to take the kick and the little Peruvian coolly sent Reina the wrong way to settle the issue.