Antonio Ruediger scored the decisive penalty as Real Madrid beat holders Manchester City in an edge-of-your-seat 4-3 shootout victory to reach the semi-finals of the Champions League after the teams were locked at 4-4 on aggregate following extra time on Wednesday.
City's Bernardo Silva and Mateo Kovacic both misfired in the shootout to put Madrid in the driving seat and Ruediger slotted their final effort past keeper Ederson to extinguish City's dreams of a second straight treble.
"We started well, went ahead and then we had to fight to survive, we had to suffer. City had control because we defended too deep," Madrid manager Carlo Ancelotti told Movistar. "By the time the penalty shootout came, we were totally convinced we'd go through.
"This is about the only way you can come to City and win. You work, sacrifice and win however you can."
An absorbing encounter had finished 1-1 on the night after Kevin De Bruyne's second-half effort had cancelled out Rodrygo's opener for Madrid, who sealed a semi-final berth against Bayern Munich.
"We've suffered a lot because City are a very strong team that put you against the ropes, but we are Real Madrid and we fought until the end, what matters is that we are in the semi-finals," Madrid skipper Nacho told Movistar Plus+.
"These are magical nights and I have goosebumps. It's one of those ones you dream of as a child."
After the teams had slugged out a thrilling 3-3 draw in the first leg, Madrid, who have hoisted the Champions League trophy a record 14 times, took the lead in the tie when Rodrygo stunned the Etihad crowd with a goal in the 12th minute.
England international Jude Bellingham picked a long ball out of the air with stunning control in the build-up to Rodrygo's goal. Vinicius Jr crossed to the 23-year-old Brazilian, whose first shot was batted away by Ederson before he tucked in an easy rebound.
"It's relief," Bellingham told TNT Sports. "You put so much into the game. I've played against City before and they snatch it away from you. I was pretty much dead on my feet at the end.
"It's so difficult. They are continuously probing with the ball and move you around. Most teams would fall apart when City get on top of you but we stood up really well."
Rodrygo's goal was Madrid's final shot on target on a night that City had 68% possession, but the home side squandered chance after chance -- several from prolific striker Erling Haaland who was replaced at the end of normal time by Julian Alvarez.
De Bruyne finally drew them level in the 76th minute with a close-range finishand the Belgian had two incredible chances to put City ahead, but launched both shots over the crossbar as manager Pep Guardiola buried his face in frustration.
"Congratulations to Real Madrid, they defend so deep, with incredible solidarity," Guardiola said. "We did everything. I have no regrets about what we've done.
"Defensively, offensively, we played exceptional in all departments, in everything, and unfortunately we couldn't win, so that's what it is."
That took the tie to extra time but City could not muster a winning goal.
While Luka Modric failed to convert Madrid's opening spot kick, Bellingham, Lucas Vazquez and Nacho were on target for the visitors, and Julian Alvarez, Phil Foden and Ederson found the net for City.
"Our biggest strength is he (manager Carlo Ancelotti) finds a way to let a lot of boys play with freedom. We're so off the cuff," Bellingham said. "As a man he fills you with calmness and confidence. I caught him yawning and he said to go out and excite him.
"You have to see it as a responsibility not a pressure if you want to play for a team like Real Madrid. Today it came down to mentality."
City have little time to lick their wounds as they head to Wembley on Saturday to play Chelsea in the FA Cup semi-finals. They also have a two-point lead over Arsenal and Liverpool in the Premier League with six games remaining.
Borussia Dortmund will face Paris St Germain in the other Champions League semi-final.