
Mohamed Salah scored twice as Liverpool eventually broke down Newcastle United to open up a three-point lead at the top of the Premier League.
In a relentless and frantic game, fuelled by wicked rain and wind on Merseyside, Liverpool took swing after swing at Newcastle but looked in danger of being held to a third consecutive Anfield draw after a goalless first half.
Salah missed the opening period's best chance when he had a penalty saved but the forward, who will now join Egypt at the Africa Cup of Nations, tapped home a cross for the first and then converted a second spot-kick in the closing stages.
His first strike was his 150th Premier League goal for the Reds, but it was cancelled out five minutes later by Alexander Isak, who got in behind the hosts' defence after good work by Anthony Gordon and curled home.
Liverpool pressed hard to go in front again and eventually Curtis Jones gave them the lead before a scuffed Cody Gapko effort from a brilliant Salah pass gave them breathing space.
But back came Newcastle when Sven Botman headed home a corner to make it 3-2 before Salah sent Martin Dubravka - who was heroic throughout - the wrong way to secure the points.
Liverpool won their opening seven Premier League games at Anfield this season but had been held to draws by Manchester United and Arsenal in their previous two home games.
They lead Aston Villa by three points and have a five-point advantage over Manchester City, who have a game in hand, and Arsenal.
Newcastle, who were missing nine first-team players, remain ninth.
Slick Liverpool find a way in chaotic match
From the first whistle the match was dominated by Liverpool, who registered a league-high 18 shots in the first half.
Trent Alexander-Arnold saw an effort deflected wide and hit the post with a wicked volley from an incredibly tight angle, while Darwin Nunez's flicked effort was kept out by Dubravka.
Diaz had a goal disallowed because Nunez strayed marginally offside in the build-up, before Salah's first penalty - powered to Dubravka's left but too central - was saved.
It meant Salah had failed to score four of his past 10 penalties in all competitions but he put it behind him and was brilliant in the second half.
Diaz and Nunez combined to leave the Egypt forward unmarked in the middle to tap home the opener and relieve the growing tension inside Anfield.
The equaliser was a setback - especially after Nunez was twice denied with good chances to make it 2-0 - but Liverpool's quality and intricate forward play eventually found a way through Newcastle.
Jones tapped home after a fine Salah pass found Diogo Jota, before the Egyptian brilliantly crossed with the outside of his foot for Gakpo to dribble his effort over the line with the bottom of his studs.
Salah's second came when Jota was tripped by Dubravka and he showed the strength of his mentality to send the goalkeeper the wrong way and sign off for what could be potentially six weeks with his country.
The victory means Liverpool are unbeaten in 22 games at Anfield, and have now only lost one of their past 52 home games in the Premier League.
"It was a sensational game from my team," said Klopp. "We started extremely lively. Everyone saw Dubravka's performance, and we ourselves made sure the score didn't get too clear.
"Super game. I loved so many aspects of the game, bar the goals we conceded. Counter-pressing-wise, it was for football schools. They have to watch that, take it and keep it. It was everything good."
Injury-ravaged Newcastle battle but lack options
Newcastle manager Eddie Howe has had to deal with a torrid run of injuries during the busiest part of the season and he came into this game with club captain Kieran Trippier also absent with a groin injury.
They weathered the early storm well and grew into the game, with Dan Burn's header disallowed because Isak was inches offside earlier in the move.
The Sweden striker's finish for the equaliser was a moment of clinical proficiency and came from their first shot on target - and only their second overall in the game.
Dubravka was in inspired form, using all parts of his body to keep Liverpool out, but he could do very little about Jones and Gapko's goals.
Those goals came around the time a manager may have been thinking of turning to his bench for fresh legs, so Howe may well be lamenting the lack of options available to him.
While Newcastle can point to their injuries, Howe will also know his side have only earned five points away from St James' Park so far this season and have only kept one clean sheet in their past 19 away games.
They play just three games in January - which could be four if they beat local rivals Sunderland in the FA Cup third round on Saturday - and Howe will hope the winter break allows him to get players fit as they look to qualify for Europe again.
"We're battling to get our best levels back," Howe told BBC Sport. "The effort and determination was there. As long as we continue to see that we'll be fine.
"The most important thing is we're fighting. We're missing a lot of players, we've had a lot of tough fixtures in a congested December."

Player of the match
Mohamed SalahMohamed Salah
with an average of 7.54
Liverpool
Squad number11Player nameMohamed SalahAverage rating7.54
Squad number17Player nameJonesAverage rating7.34
Squad number3Player nameEndoAverage rating7.19
Squad number20Player nameDiogo JotaAverage rating7.18
Squad number7Player nameDíazAverage rating7.10
Squad number2Player nameGomezAverage rating7.08
Squad number4Player namevan DijkAverage rating7.08
Squad number5Player nameKonatéAverage rating7.05
Squad number18Player nameGakpoAverage rating6.99
Squad number1Player nameAlissonAverage rating6.89
Squad number10Player nameMac AllisterAverage rating6.75
Squad number8Player nameSzoboszlaiAverage rating6.67
Squad number38Player nameGravenberchAverage rating6.43
Squad number9Player nameNúñezAverage rating6.38
Squad number66Player nameAlexander-ArnoldAverage rating6.13
Newcastle United
Squad number1Player nameDúbravkaAverage rating7.53
Squad number14Player nameIsakAverage rating5.83
Squad number4Player nameBotmanAverage rating5.36
Squad number21Player nameLivramentoAverage rating5.29
Squad number5Player nameSchärAverage rating5.24
Squad number67Player nameMileyAverage rating5.20
Squad number7Player nameJoelintonAverage rating5.08
Squad number39Player nameBruno GuimarãesAverage rating5.07
Squad number10Player nameGordonAverage rating5.05
Squad number33Player nameBurnAverage rating5.04
Squad number36Player nameS LongstaffAverage rating4.84
Squad number6Player nameLascellesAverage rating4.59
Squad number20Player nameHallAverage rating4.55
Squad number24Player nameAlmirónAverage rating4.53
Line-ups
Liverpool
Formation 4-3-3
- 1Alisson
- 66Alexander-ArnoldBooked at 45mins
- 5Konaté
- 4van Dijk
- 2Gomez
- 8SzoboszlaiSubstituted forGravenberchat 64'minutes
- 3EndoBooked at 65minsSubstituted forMac Allisterat 75'minutes
- 17Jones
- 11Salah
- 9NúñezSubstituted forGakpoat 64'minutes
- 7DíazBooked at 45minsSubstituted forJotaat 64'minutes
Substitutes
- 10Mac Allister
- 18Gakpo
- 19Elliott
- 20Jota
- 38Gravenberch
- 53McConnell
- 62Kelleher
- 78Quansah
- 84Bradley
Newcastle
Formation 4-3-3
- 1DúbravkaBooked at 84mins
- 21Livramento
- 5Schär
- 4Botman
- 33BurnSubstituted forHallat 82'minutes
- 67MileyBooked at 45minsSubstituted forAlmirónat 54'minutes
- 39Bruno GuimarãesBooked at 28mins
- 36S LongstaffBooked at 89mins
- 10Gordon
- 14Isak
- 7JoelintonBooked at 66minsSubstituted forLascellesat 82'minutes
Substitutes
- 3Dummett
- 6Lascelles
- 11Ritchie
- 17Krafth
- 18Karius
- 20Hall
- 24Almirón
- 29Gillespie
- 54Murphy
- Referee:
- Anthony Taylor
Match Stats
Live Text
Match ends, Liverpool 4, Newcastle United 2.
(Feed generated with FetchRSS)