Erling Haaland scored his 48th goal of the season after missing a penalty as Manchester City drew 1-1 at Bayern Munich to cruise into the semi-finals of the UEFA Champions League.
Haaland was on target in a f3-0 first-leg victory that put City in control of the quarter-final and he struck again to open the scoring at Allianz Arena on Wednesday.
The prolific striker had missed a spot-kick for the first time in two years in the first half, but he silenced the Bayern faithful after the break.
Joshua Kimmich ended City’s 10-match winning run by converting a harshly awarded penalty before Thomas Tuchel was sent off as Pep Guardiola, a former Bayern boss, saw his side seal a 4-1 aggregate win and a last-four tie against holders Real Madrid.
Kingsley Coman was a huge threat down the right as Bayern started with a great tempo and Leroy Sane should have put them in front when he fired wide after racing clear.
There was drama when Dayot Upamecano was shown a red card by referee Clement Turpin for a professional foul on Haaland, but the defender was given a reprieve as the Norway striker was offside.
Upamecano breathed another sigh of relief when Haaland put his spot-kick over the crossbar nine minutes before half-time after the Bayern centre-back was harshly penalised for handball.
The Bavarian giants continued to look dangerous, but City produced a devastating counter-attack to take the lead on the night after Ederson denied Coman from a tight angle.
Kevin De Bruyne was the provider, slipping in Haaland to clinically drill beyond Yann Sommer with his left foot after Upamecano slipped 12 minutes into the second half.
Sadio Mane replaced Sane, the pair who were involved in an altercation after the first leg, before Mathys Tel had a goal ruled out for offside.
Kimmich converted from 12 yards out after Manuel Akanji was unfortunate to have been penalised for handball seven minutes from time, with Tuchel then seeing red for his touchline antics as Bayern crashed out.
Bayern Munich player ratings (4-2-3-1)
GK: Yann Sommer – 6/10 – Didn’t really have much to do in Bayern’s goal apart from picking the ball out of his net.
RB: Benjamin Pavard – 6/10 – Not able to affect the game in the final third the way Bayern needed him to.
CB: Dayot Upamecano – 4/10 – Another disaster night for the Frenchman, first conceding a penalty for handball before slipping over to allow Haaland a free run at Sommer.
CB: Matthijs de Ligt – 6/10 – Pretty cool and composed on the ball but the tie was lost after the first leg.
LB: Joao Cancelo – 6/10 – Crunched Bernardo Silva’s foot early doors in a funny teammate on former teammate moment. Showed nice skill on occasion.
DM: Joshua Kimmich – 8/10 – Everywhere in midfield for Bayern and dispatched his penalty with predictable efficiency.
DM: Leon Goretzka – 6/10 – Full of running in central midfield but to no real avail in the end.
RM: Kingsley Coman – 8/10 – Looked capable of making things happen every time he got the ball. Easy to see why Coman has had such a good statistical season with performances like this.
AM: Jamal Musiala – 7/10 – Perfectly weighted his passes throughout and was a genuine threat. Oozes class for such a young player.
LM: Leroy Sane – 6/10 – Things might have been so different had Sane buried his first half opportunity. He didn’t and the comeback failed to materialise.
CF: Eric Maxim Choupo-Moting – 6/10 – Offered Bayern more of a focal point but up front but didn’t ever get a clear-cut opportunity in front of goal.
SUB: Alphonso Davies (63′ for Cancelo) – 7/10 – The tie was completely over by the time Davies entered the picture. Did well.
SUB: Sadio Mane (63′ for Sane) – 6/10 – Not pulling up any trees in Munich, is he? Nice comedic value touch from Tuchel to bring him on for Sane.
SUB: Mathys Tel (72′ for Choupo-Moting) – N/A
SUB: Thomas Muller (72′ for Musiala) – N/A
SUB: Josep Stanisic (77′ for Pavard) – N/A
Subs not used: Ulreich (GK), Sarr, Mazraoui, Blind, Gravenberch, Gnabry, Ibrahimovic
Thomas Tuchel – 6/10 – Was spitting feathers on the touchline for most of the night, apoplectic about refereeing decisions that went against his side. Sent off late on and probably irked by Sane’s early miss.
Man City player ratings (3-2-4-1)
GK: Ederson – 8/10 – Didn’t have to make any blindingly outstanding saves but did have to be alert on a number of occasions. Good outing.
CB: Manuel Akanji – 6/10 – Coped well against the blistering pace of both Coman and Sane.
CB: Ruben Dias – 8/10 – A big performance from one of City’s best players on a night when he needed to be strong.
CB: Nathan Ake – 6/10 – Huge concern for City’s title bid late on as Ake went off with an apparent hamstring pull.
DM: John Stones – 7/10 – Flipped between playing in defensive midfield and as centre-back with supreme ease.
DM: Rodri – 7/10 – Not put under tremendous amounts of pressure. A solid enough showing from the Spaniard.
RM: Bernardo Silva – 7/10 – Has such wonderful feet in tight areas. A real joy to watch at times.
CM: Ilkay Gundogan – 6/10 – Got a bit scrappy with international teammate Kimmich at the end of the first half – the kind of stuff supporters love to see.
CM: Kevin De Bruyne – 7/10 – Another assist for the Belgian on a terrific night for City.
LM: Jack Grealish – 8/10 – After a season of finding his feet in City colours, Grealish now looks like the real deal in every game he plays.
ST: Erling Haaland – 7/10 – Inexplicably missed his penalty but righted that wrong within 20 minutes. Obviously.
SUB: Aymeric Laporte (67′ for Ake) – 6/10 – Picked up a late booking for a rash tackle and was caught a little narrow at times.
SUB: Julian Alvarez (84′ for Haaland) – N/A
SUB: Kyle Walker (88′ for De Bruyne) – N/A
Subs not used: Ortega (GK), Carson (GK), Lewis, Gomez, Phillips, Perrone, Foden, Palmer, Mahrez
Pep Guardiola – 7/10 – Didn’t complicate matters by changing a winning formula and it paid dividends. Will be interesting to see how the Spaniard looks to combat Real Madrid.