“In football anything is possible,” was Pep Guardiola’s rallying cry and while Manchester City failed to pull off a Lazarus act for the ages, this was a definite one-off wonder of a contest that thrilled all witnesses.

Particularly, the first 45 minutes of mayhem headlined by Vinícius Júnior apparently being ruled offside by the referee, Clément Turpin, then onside, which meant Bernardo Silva was then penalised for handball, sent off, and the Brazilian then scored from the spot. Further entertainment also derived from a Guardiola yellow card, Erling Haaland’s equaliser, and a slew of goalmouth incident that mostly continued after the break – including late finishes from Rayan Aït-Nouri and Fede Valverde that were ruled offside, and one from Vinícius that counted.

Cue the effervescent Brazilian’s “crying” celebration: a playful riposte to City fans who at Madrid’s last visit showed a banner reading “Stop crying your heart out” after Rodri won the 2024 Ballon d’Or ahead of him.

The bottom line is this: City were unable to overturn the 3-0 first-leg deficit and so are out, and Real Madrid through to the quarter-finals. Guardiola offered a proud verdict – “the future is bright” – but should rue how open his side were, particularly at the Bernabéu.

To prosper City required a comeback as scintillating as the 2011-12 title-clinching win over QPR yet Guardiola’s lineup was less adventurous than last Wednesday’s losing XI, the directness of Savinho and Antoine Semenyo discarded for the guile of Rayan Cherki and Tijjani Reijnders. Marc Guéhi and Nico O’Reilly were also out – and Matheus Nunes and Aït-Nouri in.

When Valverde spurned a gilded chance to score a fourth of the tie when through inside the opening 60 seconds this ignited a chaotic period.

After this letoff, City went close to pulling one back. Flooding Madrid’s area, piledrivers from Cherki and Rodri were repelled by the excellent Thibaut Courtois and Reijnders’ attempt was blocked.

The stadium volume was ear-splitting, the faithful urging those in sky blue to continue for the jugular. Madrid hoped to soak City’s bombardment up and quell it. When Rodri slipped, they countered via Brahim Díaz, who fed Vinícius but Nunes snuffed the danger out.

Now, the farrago involving Turpin which, with Vinícius onside, ended in the correct decision of penalty and Silva’s red card. Along the left, the Brazilian ran in and smashed a rocket off Gianluigi Donnarumma’s left post. The ball hit the rear of the Italian on the rebound and eventually came back to the No 7, who fired at goal. Silva, guarding his left post, stuck out a left elbow and blocked the ball.

From here, total confusion. The video assistant referee considered if Vinícius was offside and Turpin seemed to raise an arm to confirm so. But, the forward was, actually, ruled onside and the referee ordered to the monitor: he adjudged Silva to have handballed, awarded the penalty and sent City’s captain off – to wholesale home disgust.

Bernardo Silva keeps out Vinícius Júnior’s shot with his elbow and is sent off. Photograph: Nick Potts/PA

Now, unlike last week, Vinícius beat Donnarumma, sending him the wrong way, and that was 4-0 overall.

Twenty-two minutes in and the bedlam continued. Haaland forced a Courtois save, the potent Vinícius galloped to the other box and blasted over. An Antonio Rüdiger challenge took Aït-Nouri down by Madrid’s D but Turpin took no action, so Guardiola complained to Willy Delajod, the fourth official, and was booked.

Further breathlessness featured Rodri scooping high after Courtois again repelled a Haaland shot from the left before Madrid, briefly, exerted control via passes that closed with Díaz sitting Rúben Dias down, the Moroccan’s effort kept out by Donnarumma.

The period ended with Haaland turning in, after Jérémy Doku’s cross was inadvertently touched on by Trent Alexander-Arnold to the No 9: a City lifeline, however faint, at least.

For the second half Guardiola introduced Nathan Aké for Reijnders and Marc Guéhi for Dias, while Álvaro Arbeloa – due to “some problems”, Madrid’s coach said – removed Courtois for Andriy Lunin.

The fun resumed, as Vinícius again was profligate before goal while, at the other end, Lunin stopped Haaland’s low drive.

When Madrid tapped possession about for at least 30 seconds and the contest slowed this felt strange. It didn’t last: Haaland and Rodri soon took aim and Guardiola, in a gambler’s throw, made two more substitutions.

Off came Haaland and Nunes for Omar Marmoush and Semenyo – two attackers for a centre-forward and defender. City pressed more, Madrid unable to administer the fatal blow that would finally kill them off, despite the man advantage, and their admirable spirit had Doku finishing, but he was offside when released by Cherki.

Kylian Mbappé joined the fray, saw Donnarumma tip over a Vinícius header, but when Alexander-Arnold’s subsequent corner came to him, he steered wide.

City ended still posing problems but being 4-1 behind was an impossible task, and so, after Vinícius’s final flourish, Madrid wandered off far happier.