Leroy Sané, Bernardo Silva and Ilkay Gundogan all found the target, but a three-goal blast inside nine minutes midway through the second secured victory for Liverpool.
In a seesaw match, Sane cancelled out Alex Oxlade-Chamberlain's early strike to leave the game poised at 1-1 at the break. But quickfire goals from Roberto Firmino, Sadio Mane and Mo Salah put the hosts 4-1 up on 67 minutes before City threatened to stage a remarkable late recovery.
Pep Guardiola made six changes from the side which secured a 2-1 Carabao Cup semi-final first leg win over Bristol City in midweek.
Ederson, Kyle Walker, Fabian Delph, Nicolas Otamendi, Fernandinho and Sergio Aguero all returned to the starting line-up while David Silva was named as one of the substitutes.
The weather may have been freezing on Merseyside but a high-intensity start from both sides soon warmed up a capacity Anfield crowd as Liverpool and City looked to probe and press.
And it was the hosts who drew first blood as they got off a flying start with Oxlade-Chamberlain opening the scoring on nine minutes.
The former Arsenal wide man exploited a gap in the City back line and was able to drive forward unchallenged before firing a right-foot past Ederson into the right-hand corner of the net.
Falling behind so early appeared to interrupt the Blues' normal rhythm and fluency but City gradually rediscovered the form that has lit up the league this term.
Sergio Aguero almost met a Kevin De Bruyne cross before a deflected shot by Sané was just inches off target.
Liverpool remained a constant threat with Salah heading just wide from Oxlade-Chamberlain's cross but City stayed on the front foot, taking the game to the hosts and deservedly drew level on 40 minutes.
Kyle Walker was the architect, drilling a sensational 45-yard crossfield ball to Sané. It enabled the German winger to evade Joe Gomez and he ran inside the left channel before unleashing a vicious shot which evaded 'keeper Loris Karius at the near-post in front of the jubilant City fans.
The travelling Blues were almost celebrating again four minutes later as Fernandinho's rasping shot just evaded the Liverpool goal to sum up a high-octane, high-quality first 45 minutes.
City remained on the offensive straight from the restart and came agonisingly close to taking the lead in the 50th minute when a superb header from Nicolas Otamendi struck the Liverpool crossbar.
However Jurgen Klopp's side were still causing problems and Ederson was called into action to keep out Salah's thunderous drive before then parrying his cross-cum-shot over the bar.
Then, against the run of play, the game turned on its head in a disastrous nine-minute spell which saw Liverpool score three times.
On 59 minutes Liverpool regained the lead and Oxlade-Chamberlain was the creator this time, feeding Firmino who first shrugged off John Stones with a robust challenge before then curling a shot past Ederson and inside the post.
The Blues were rocked on their heels and within two minutes Liverpool had struck again.
Mane had hit the post with a snap shot before then making no mistake with a fine 61st left-foot shot which gave Ederson no chance after Salah had robbed Otamendi.
It then went from bad to worse on 67 minutes. Ederson ran out from his box to cut-out a through ball but his clearance instead went straight to Salah. From 35 yards out, the Egyptian curled a fine shot over the keeper and into the net.
City should have reduced the arrears on 78 minutes when Otamendi failed to convert De Bruyne's excellent in-swinging cross.
But the Blues did find the target on 83 minutes to offer some hope when substitute Bernardo Silva picked up a deflected cross and then drifted inside before producing a fine crisp finish.
And never-say-die City further added to the Anfield nerves in the first minute of added time when Ilkay Gundogan finished from close-range after a fine pass from Aguero.
With the last meaningful act of the game, Aguero agonisingly headed inches past the post from a De Bruyne free-kick as City almost completed an incredible comeback - though the flag was raised anyway.
Pep will now rally his troops ahead of next week's game with Newcastle...
Nicolas Otamendi's 50th minute header that smacked the Liverpool crossbar. At the time the game was evenly poised at 1-1.
Who knows what the final outcome would have been had Nico's effort gone in?
Sané never stopped running and working for the cause and his stunning first-half goal was rich reward for what was another fine individual performance from the young German.
What does it mean?
In terms of the league. Nothing has really changed. City are still 15 points clear ahead of Manchester United's home game with Stoke on Monday night. If United win, City's lead would be cut to 12 points.
City resume Premier League action next Saturday when the Blues entertain Newcastle United at the Etihad Stadium, kick-off 5.30pm.