UEFA Champions League
Result: Manchester City 1-2Liverpool (1-5 agg.)
Date: 10 April 2018
The Citizens took the lead as early as the second minute as Fernandinho played in Raheem Sterling, who teed up Gabriel Jesus to slot into the bottom corner.
The hosts managed to carve out another chance on 19 minutes as Sterling looked to pick out Jesus in the six-yard box, but the Brazilian failed to make a proper connection with the cross.
The Reds, meanwhile, struggled to get the ball off the home side and spent most of the first-half defending in numbers.
City nearly doubled their lead five minutes before the break as Bernado Silva rattled the post before Leroy Sane had a goal incorrectly ruled out moments later.
Nevertheless, the score remained 1-0 to the hosts at the half-time break, but Liverpool still 3-1 up on aggregate.
Ten minutes into the second half, Liverpool restored parity on the night as Ederson did well to deny Sadio Mane, but Mohamed Salah latched onto the loose ball to send a composed finish into the back of the net.
Guardiola responded by introducing Aguero for David Silva on 65 minutes.
However, Liverpool doubled their lead 10 minutes later as a mistake from Nicolas Otamendi gifted the ball to Firmino, who raced into the area before calmly slotting into the far corner.
The Citizens pushed hard for an equaliser in the closing stages but Liverpool remained resolute to see out the clash and seal their spot in the final four.