Harry Wilson’s penalty put Liverpool ahead in the 14th minute but City led at the break through goals from Lorenzo Gonzalez and Rabbi Matondo.
The half also had a player from each side, City’s Benjamin Garre and Rhian Brewster, of Liverpool, pictured above, taken off on stretchers.
Liverpool pressed for an equaliser in the second half but City scored next through Felix Nmecha.
Toni Gomes pulled a goal back for the Reds in the last minute but City held on to win and climb up to seventh.
Liverpool remain a point above Leicester City with a match in hand.
Man City: 29 Jan v Leicester (A)
Liverpool: 21 Jan v Charlton (H) PL Cup