Kevin de Bruyne's deflected late equaliser gave Manchester City a fully deserved point after a moment of genius by Mohamed Salah looked to have earned Liverpool victory in an Anfield thriller.
Reigning champions City and Jurgen Klopp's Liverpool were each hoping to take over from Chelsea at the top of the table, but this result means Thomas Tuchel's side stay clear at the Premier League summit.
City dominated the first half but wasted a host of chances and were punished when Sadio Mane was the beneficiary of more Salah brilliance to apply a clinical finish to put Liverpool ahead after 59 minutes.
Liverpool's lead lasted just 10 minutes until Phil Foden, who tormented the struggling James Milner throughout, took a pass from Gabriel Jesus and fired a low, angled finish across Alisson at the Kop end.
City manager Pep Guardiola was nursing an understandable sense of injustice after Milner somehow escaped a second yellow card for blatantly upending Bernardo Silva, before Anfield exploded in joy after 76 minutes when Salah slalomed his way beyond a succession of City defenders to power home a stunning finish.
City's performance merited at least a point and secured it when De Bruyne's shot took a deflection off Joel Matip to beat Alisson with nine minutes left.
The Reds should have won it with five minutes remaining but Fabinho's goalbound shot was kept out by Rodri's sensational block.
Peerless Salah lifts Liverpool
Liverpool have bullied City at Anfield in the past but the tables were turned here in the first half, the champions dominating possession and pinning the hosts back in a manner rarely seen under Klopp in recent seasons.
Klopp's side needed a spark to return to at least something like their normal selves and it was talisman Salah who provided it with a virtuoso second-half performance.
The Egyptian first of all showed his class to set up Mane for a goal that was against the overall run of play but was the result of Liverpool increasing the pace at the start of the second half. Salah's run and pass was sheer perfection and his attacking partner gratefully accepted the invitation to finish in style.
And after the excellent Foden drew City level, Salah scored a goal that will live long in the memory as he twisted and turned in between a host of City defenders before lashing an unstoppable finish past Ederson.
It was a goal worthy of winning any match, but in reality Liverpool could not complain at only getting a point as they struggled to exert their authority.
Salah's masterclass, however, showed once again that he truly belongs among the game's elite.
More to follow.
Player of the match
Mohamed SalahMohamed Salah
with an average of 7.66
Squad number11Player nameMohamed Salah
Squad number10Player nameMané
Squad number1Player nameAlisson
Squad number4Player namevan Dijk
Squad number26Player nameRobertson
Squad number20Player nameDiogo Jota
Squad number32Player nameMatip
Squad number9Player nameRoberto Firmino
Squad number3Player nameFabinho
Squad number12Player nameGomez
Squad number14Player nameHenderson
Squad number17Player nameJones
Squad number7Player nameMilner
Squad number47Player nameFoden
Squad number20Player nameBernardo Silva
Squad number17Player nameDe Bruyne
Squad number16Player nameRodri
Squad number31Player nameEderson
Squad number3Player nameRúben Dias
Squad number27Player nameJoão Cancelo
Squad number9Player nameGabriel Jesus
Squad number2Player nameWalker
Squad number14Player nameLaporte
Squad number7Player nameSterling
Squad number10Player nameGrealish
- 7MilnerBooked at 42minsSubstituted forGomezat 78'minutes
- 4van Dijk
- 3FabinhoBooked at 83mins
- 20JotaBooked at 65minsSubstituted forFirminoat 68'minutes
- 76N Williams
- 3Rúben DiasBooked at 26mins
- 27CanceloBooked at 56mins
- 20Bernardo SilvaBooked at 77mins
- 17De Bruyne
- 9Gabriel Jesus
- 10GrealishSubstituted forSterlingat 66'minutes
Match ends, Liverpool 2, Manchester City 2.
Second Half ends, Liverpool 2, Manchester City 2.
Corner, Manchester City. Conceded by Mohamed Salah.
Attempt blocked. Gabriel Jesus (Manchester City) right footed shot from the right side of the box is blocked. Assisted by Raheem Sterling.
Attempt blocked. Fabinho (Liverpool) right footed shot from the left side of the six yard box is blocked. Assisted by Mohamed Salah with a cross.
Foul by Bernardo Silva (Manchester City).
Mohamed Salah (Liverpool) wins a free kick on the right wing.
Foul by Gabriel Jesus (Manchester City).
Sadio Mané (Liverpool) wins a free kick in the attacking half.
Foul by Gabriel Jesus (Manchester City).
Curtis Jones (Liverpool) wins a free kick on the left wing.
Attempt missed. Kyle Walker (Manchester City) right footed shot from outside the box is too high from a direct free kick.
Fabinho (Liverpool) is shown the yellow card for a bad foul.
Bernardo Silva (Manchester City) wins a free kick in the attacking half.
Foul by Fabinho (Liverpool).
Goal! Liverpool 2, Manchester City 2. Kevin De Bruyne (Manchester City) left footed shot from outside the box to the centre of the goal.
Corner, Manchester City. Conceded by Joel Matip.
Substitution, Liverpool. Joseph Gomez replaces James Milner.
Bernardo Silva (Manchester City) is shown the yellow card.
Goal! Liverpool 2, Manchester City 1. Mohamed Salah (Liverpool) right footed shot from a difficult angle on the right to the bottom left corner. Assisted by Curtis Jones.
- Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment