The Liverpool machine continues to respond to Man City's results and took all three points away at Cardiff.
Both sides had clear cut chances to score with their forwards but it was Liverpool who accelerated in the second half in similar fashion to the past two games.
Gini Wijnaldum hammered in the reds opener before substitute James Milner fired in a penalty after Mo Salah was man-handled in the area.
Firmino and Jordan Henderson both had the opportunity to add further goals in a game that took Liverpool to 88 points - the clubs' highest in the Premier League era.
Henderson, Firmino and Keita were all restored to the Liverpool line up and the reds started brightly in the south wales sunshine.
Cardiff mounted an impressive rearguard action in the first half but Liverpool eventually rolled them over in a much improved second half performance.
Trent Alexander-Arnold had a bit of a tough first half but he provided the cross that Wijnaldum smashed in early in the second half.
Fabinho replaced Naby Keita but suffered a head collision just minutes later and as a precaution he was replaced by James Milner.
The Liverpool vice-captain fired in the penalty after Mo Salah was fouled by Morrison.
Cardiff do still have Premier League aspirations for next season but for Liverpool the focus remains on trying to wrest control from Man City who face an out of form Man Utd on Wednesday.
The reds take a two point lead over Man City who do still have a game in hand.
More to follow.