Manchester City collapsed in the final stages of their Champions League play-off first leg to lose to Real Madrid.
Pep Guardiola's side were 2-1 up with five minutes to go at the Etihad, but they crumbled in the dying moments to lose 3-2.
Former Man City midfielder Brahim Diaz equalised after an Ederson error before Jude Bellingham claimed a last-gasp winner.
It leaves City will a massive task to turn this tie around and remain in Europe at the Bernabeu in the second leg.
You can recap all of the action in our live blog below...
Familiar story
Pep Guardiola has pointed out that once again 'bad decisions' have led to his team collapsing late on in a game.
Countless times this campaign, Man City have given up their lead or conceded goals after defensive errors.
"Many times it has happened this season," Guardiola said to Amazon in regards to slip-ups costing City results.
"I know the the quality of Real Madrid. We took the game in the second half and tried to attack too quick.
"It happens because they [Real] are an exceptional team.
"It happens many times this season. Bad decisions, that's all.
"I take it. It's not about you and me, it's everyone. Yeah, that is all season [injuries]. But we know it."
On next week's second leg, he said: "Of course now it's tough.
"We have to recover. I think now about Newcastle [in the Premier League this weekend] and then go to the Bernabeu."
'We need to look at ourselves'
Man City defender John Stones has revealed what Pep Guardiola has told the team after another damaging loss.
Stones reviewed the game, telling Amazon: "I don't know how to put it into words straight away, it's so raw and frustrating for everyone.
"We were in the game until so late and then it's two situations that happen and we concede.
"It's frustrating as a defender to come away with that result. It's a feeling of anger and frustration."
He added: "We need to see games out better. The manager said we need to take accountability for what we do on the pitch, I think we do that. We need to step up when these bad moments happen.
"Today we had a great opportunity to go to the Bernabeu with a 2-1 lead. It's not done. We have to stay positive, which is difficult now."
"As the manager says we need to look at ourselves and take accountability," Stones continued.
"We were right on top at the start of the game and we know Real have quality to come out in the second half. It is avoidable from us as the eleven on the pitch.
"We have to do better - it's as simple as that.
"We have to keep a positive mentality and try to put it right."
Bellingham reacts
Jude Bellingham has now given his thoughts on Real Madrid's incredible late comeback at the Etihad.
"It was a weird one," he told Amazon. "We played some of our best football of the season and ended up behind.
"I think we were playing well and creating a lot. We were always confident throughout the game that something would drop for us.
"I don't care what form City are in they are still an unbelievable team.
"It's always tricky to play against them and we finally took the chance at the end."
Bellingham continued: "It's always good to take a lead back home and I'm sure the Bernabeu will come through for us.
"It seems like there is up and downs in these knockout games. It's not just game management, it's tactical and it's physiological as well."
Hey Jude, you've made history
It was Jude Bellingham's goal that won it for Real Madrid.
The winning moment was only a tap-in from close range but the goal was a historic one.
Bellingham is now the first English player to score a Champions League goal against an English side for two different clubs.
He's netted against a Premier League opponent for Real after doing so with Borussia Dortmund too.
The 21-year-old superstar always seems to step up in the biggest moments.
Unwanted trend
Manchester City lost a Champions League game in which they led at half-time for the first time since April 2018 (1-2 v Liverpool).
They were unbeaten in 32 such games before tonight (W29 D3).
But maybe we should have expected it considering their recent form in Europe when scoring first.
City have failed to win any of their last four Champions League games in which they’ve scored first, with all those coming during this campaign.
They have crumbled under pressure yet again.
Man City 2-3 Real Madrid
The story of Manchester City's season.
They thought they'd won it and that some positivity was finally coming to their dismal season.
But it's yet another collapse brought on by individual errors.
Ederson's poor kick led at Brahim Diaz's equaliser only six minutes after Erling Haaland though he'd won it from the spot.
Then Real won two 50/50s to find Jude Bellingham who tapped in from close range to win in dramatic circumstances.
Pep Guardiola just can't catch a break.
Man City 2-3 Real Madrid: FULL TIME
Can you believe it?! The final whistle blows.
Manchester City have collapsed yet again.
They've allowed Real Madrid to claim an incredible late comeback win in the first leg of this Champions League play-off.
Jude Bellingham wins in at the death.
City now have to win at the Bernabeu to progress.
GOAL! Man City 2-3 Real Madrid: Jude Bellingham
90+2' JUDE BELLINGHAM HAS WON IT!
THIS IS JUST TYPICAL REAL MADRID!
Manchester City have thrown this away!
Two goals in the final stages and Real are heading into the second leg with a 3-2 lead!
Vinicius Junior pokes a ball past Rico Lewis and then he beats Ederson to the ball to find Bellingham.
The England superstar gets to the ball first and taps home.
Credit: Getty Man City 2-2 Real Madrid
90' We're into three minutes of added time.
The Etihad has fallen quiet again.
They know a draw in this first leg leaves them with a massive challenge in the second leg in Madrid.
That Ederson error is going to prove costly.
GOAL! Man City 2-2 Real Madrid: Brahim Diaz
86' REAL MADRID HAVE HIT BACK!
OUT OF NOWHERE, BRAHIM DIAZ SCORES!
Ederson gets his kick all wrong and it finds Jude Bellingham who kickstarts a fast Real Madrid counter.
Vinicius Junior's shot is saved but it drops to the former City midfielder who tucks in the rebound.
That's a nightmare for Pep Guardiola's side.
Troy Deeney live on 90mins: "Ederson, Ederson, Ederson.
"There's no pressure and he shanks it."
Man City 2-1 Real Madrid
84' Man City now make some changes of their own.
Kevin de Bruyne and Savinho come off.
They're replaced by Ilkay Gundogan and Omar Marmoush who is making his European debut for the club.
Former City player Brahim Diaz replaces Rodrygo for Real.
Man City 2-1 Real Madrid
82' Luka Modric comes on for Real Madrid.
He'll look to conduct the midfield and create some late chances for the visitors at the Etihad.
They will want to level again, to take a draw into the second leg.
Can Man City hold on?
GOAL! Man City 2-1 Real Madrid: Erling Haaland
79' MANCHESTER CITY REGAIN THE LEAD!
HOW IMPORTANT COULD THAT GOAL BE?!
Erling Haaland scores from the spot after a long wait to take it due to Phil Foden's injury.
He confidently sends Thibaut Courtois the wrong way to score his 49th goal in 48 Champions League games.
Man City lead with just over 10 minutes to go.
Troy Deeney live on 90mins: "Pressure is meant for tires, not that fella."
PENALTY! Man City 1-1 Real Madrid
77' PENALTY FOR MAN CITY!
PHIL FODEN IS BROUGHT DOWN IN THE BOX!
This is a huge moment in this tie.
Dani Ceballos trips Foden right on the edge of the penalty area and the referee points at the spot.
The Man City star remains down injured, so he's going to receive some treatment before the penalty is taken.
Man City 1-1 Real Madrid
74' The intensity has dropped now.
Man City are looking to take the momentum from Real Madrid and it's working at the moment.
The onslaught of chances for Real have ended.
Kylian Mbappe's goal has the game level heading into the final stages of this knockout phase play-off first leg.
Man City 1-1 Real Madrid
71' Now there's half a chance for City!
Bernardo Silva beautifully picks out Rico Lewis who makes a move forward into the box.
Lewis pings a cross towards Erling Haaland but it's too powerful and just hits the striker before going out of play.
That's better from the hosts.
Man City 1-1 Real Madrid
69' Man City just need to find something to wake them up.
It continues to be so quiet in the stands.
The fans have seen this so many times this season from their side, as they struggle to defend.
Pep Guardiola needs his side to gain some control.
At the moment, Real Madrid are the team looking more likely to claim a winner at the Etihad.
CHANCE! Man City 1-1 Real Madrid
66' ANOTHER CHANCE FOR REAL MADRID!
This time Jude Bellingham is denied by Ederson!
The ball was allowed to find Bellingham in the box and he got to it first against Rico Lewis.
His strike needed to be impressive to beat the onrushing goalkeeper and Ederson managed to keep it out.
Kylian Mbappe then hits the post with another chance that ends up seeing the offside flag go up.
CHANCE! Man City 1-1 Real Madrid
63' It's all Real Madrid now.
They're piling the pressure on and you could hear a pindrop in the Etihad Stadium at the moment.
The home support are quiet as the nerves build.
Fede Valverde has just struck inches wide of the post with a low, powerful strike across goal.
GOAL! Man City 1-1 Real Madrid: Kylian Mbappe
60' KYLIAN MBAPPE EQUALISES!
REAL MADRID'S PRESSURE PAYS OFF!
Fede Valverde's free-kick luckily deflects back to Dani Ceballos who superbly picks out Mbappe.
The Frenchman scuffs his volley at goal, but the ball very slowly floats through the air and somehow finds the back of the net.
That is a HUGE goal for Real.
Troy Deeney live on 90mins: "What have I just seen.
"One of the world's best footballers has just scored the best shank I've ever seen."
Man City 1-0 Real Madrid
58' What a tackle that is from Josko Gvardiol!
Kylian Mbappe races down the right and looks to be in behind the Man City defence...
But Gvardiol brillianly slides in to take the ball, somehow avoiding conceding a foul and a sure red card.
Pep Guardiola is raging on the touchline though, as his side keep inviting pressure on.
CHANCE! Man City 1-0 Real Madrid
55' Real Madrid are really gettiing going now.
Kylian Mbappe has just seen his great right-footed shot parried away brilliantly by Ederson at his near post.
Vinicius Junior then beats Rico Lewis on the outside again before Ruben Dias comes across to help out.
The Spaniards have massively improved in the last few minutes.
Troy Deeney live on 90mins: "They're suffocating City now, a really good save from Ederson.
"Vinicius Junior has Lewis's number and they're really taking it to City in this second half."
Man City 1-0 Real Madrid
53' That's more like it from Real Madrid.
Jude Bellingham pulls the strings in midfield, playing some neat one-twos to begin a nice attack.
The ball eventually comes to Vinicius Junior on the left and he beats Rico Lewis before chipping a cross in.
Bellingham is on the end of it, but he sends his header wide.
Man City 1-0 Real Madrid
50' Pep Guardiola's side are looking impressive.
They were on the back foot to end the first half, but they've come out well on top in the second.
Josko Gvardiol's strike has just been blocked wide.
From the corner, Kylian Mbappe flicks clear at the near post.
Real Madrid aren't back into their flow yet after the break.
CROSSBAR! Man City 1-0 Real Madrid
47' WHAT A START TO THE HALF!
Erling Haaland has struck the woodwork!
He receives the ball in the box, shifts it onto his left foot and then sees his shot deflected into the air.
The effort leaves Thibaut Courtois stunted to the ground before coming back off the crossbar.
So, so close to a second goal for Man City.