Atletico Madrid's Julian Alvarez had a penalty dramatically ruled out in the shootout as Real Madrid edged out their city rivals to reach the quarter-finals.
They will face Arsenal in the last eight, having kept alive their hopes of winning a record-extending 16th Champions League trophy.
Neither side could find a winning goal before the end of extra time after Conor Gallagher's strike - just 27 seconds into the game - had levelled the tie on aggregate after Real's 2-1 first-leg win.
That meant penalties were needed to determine the outcome and, after the first three had been converted, former Manchester City forward Alvarez stepped up to take Atletico's second.
He slipped while taking it, but the ball ended up in the back of the net. While it was initially given, the successful spot-kick was subsequently ruled out by the video assistant referee (VAR), with Alvarez having been deemed to have touched the ball twice as he struck his effort.
Fede Valverde converted his penalty to put Real 3-1 ahead and although Atletico goalkeeper Jan Oblak saved Lucas Vazquez's spot-kick to briefly give Atletico hope, Marcos Llorente hit the bar.
Antonio Rudiger then stepped up to squeeze home the decisive penalty to send Real through by a 4-2 margin.
Frustration for Atletico but Real march on
The outcome will be bitterly disappointing for Atletico after they had produced a brilliant defensive display for the majority of the match to limit Real to few chances.
They had made a dream start when England international Gallagher stabbed in following a rapid Atletico attack down the right, making history as the first Englishman to score in a Madrid derby.
Real could barely fashion a chance after that against a well-organised and disciplined home side, who had not lost a knockout tie at home since Ajax beat them in 1997.
At the other end, the lively Alvarez was denied three times by Thibaut Courtois.
Frenchman Kylian Mbappe had been kept largely quiet, but the one time he got free of his markers he burst through and won a penalty as he was brought down inside the box by Clement Lenglet.
Vinicius Jr, who had scored all of his previous seven penalties for Real, stepped up with the chance to put Real ahead in the tie once again with 20 minutes to go, but the Brazilian smashed his effort well over the bar.
There was nothing to separate the sides after that in a tense derby and Real, who beat Atletico in the 2014 and 2016 finals, maintained their 100% record against their fierce rivals in penalty shootouts to progress.
Latest Stories
-
Rafatu Inusah elected onto GOC Board
20 minutes -
SAMSON’S TAKE: AG okays demo, how refreshing?
35 minutes -
Trump questions Putin’s desire for peace after meeting Zelensky at the Vatican
1 hour -
Legend of The Week – George Darko
2 hours -
Kounde strike wins Copa del Rey final for Barcelona
7 hours -
Is NPP crying more than the bereaved in the Chief Justice saga?
8 hours -
“Elements within NPP worked against me for supporting ‘Ken must go'” – Cynthia Morrison
9 hours -
IMF Boss commends finance minister for strong commitment to economic reform
9 hours -
Cynthia Morrison advises Ghanaian women to diversify their skills to build wealth
9 hours -
UK deports 43 immigration offenders to Ghana and Nigeria
10 hours -
Piwak Natural Health urges Akosombo victims to rebuild with new donation
10 hours -
Ghana’s Para athlete Gilbert Ampiah wins bronze at Marrakech Grand Prix 2025
10 hours -
6 dead in Adansi Dompoase crash involving VIP bus and sprinter
11 hours -
Saturday’s heavy rainstorm caused outages within our network – ECG
11 hours -
Police arrest 3 over gold robbery at Wassa Afransie
12 hours