Goals: Henderson (11), Coutinho (75); Dzeko (25)
Manuel Pellegrini fielded a formidable team, with Yaya Toure, David Silva and Sergio Aguero all starting proceedings.
Lallana had the first chance of the game when put through on goal by Coutinho, but his shot was comfortably saved by Joe Hart. The 26-year-old then had a terrific goal correctly ruled out for offside.
The Reds were ahead after 10 minutes, and it was a sensational goal. Captain Jordan Henderson thundered a magnificent 25-yard effort past Hart and into the top corner of the Anfield Road net, as the home faithful went wild.
Aguero hit the post almost straight after the restart, but Simon Mignolet should really have got to the ball prior to the Argentine’s strike.
City were level after 25 minutes. A clever pass by Aguero found Edin Dzeko, and the Bosnian finished clinically past Mignolet.
The reigning Premier League champions dominated the first-half from that point on, although Lallana did almost give his side the lead again after 34 minutes, but fired wide.
It had been a superb opening 45 minutes full of attacking football, and at the break it was 1-1.
Aguero headed over just seconds after the interval, while Raheem Sterling nearly pounced from six yards. Lallana had another goal ruled out, after Martin Skrtel had been in an offside position.
It was all to play for with half an hour remaining, in a game where three points for either side would prove absolutely priceless.
With 15 minutes, Liverpool were ahead again, and it was a another piece of individual genius by Coutinho. The 22-year-old curled a stunning strike past Hart from a wide-left position, arguably eclipsing his goal against Southampton last weekend. It was fully deserved after a dominant second-half.
Sturridge replaced Markovic in the 76th minute, and Toure came on for Alberto Moreno six minutes later, as Rodgers’ men tried to see the game out.
Sturridge had a wonderful chance to finish the game off late on, but shot wide, and Silva missed the target at the other end. Liverpool hung on for a richly deserved win, in what was a fantastic team performance.
Liverpool: Mignolet, Can, Skrtel, Lovren, Henderson, Allen, Moreno (Toure 82), Markovic (Sturridge 76), Lallana, Coutinho, Sterling.
Subs not used: Ward, Lambert, Borini, Balotelli, Williams
Manchester City starting XI: Hart, Zabaleta, Mangala, Kompany, Kolarov, Fernandinho, Yaya Toure, Silva, Nasri, Dzeko, Aguero.
Referee: Mark Clattenburg