Thomas Tuchel's side will meet Manchester City in Istanbul after a fully deserved triumph at Stamford Bridge, secured through Timo Werner and Mason Mount.
The Germany international's first open-play goal in the competition since September 2019 put the Blues ahead before Mount converted from close range in the closing stages after the hosts had missed a plethora of second-half openings as they countered Madrid with ease.
Zinedine Zidane's men looked out of sorts in a makeshift 3-4-3, despite having captain Sergio Ramos and former Chelsea star Eden Hazard back in the side, as its winless record against the Premier League club stretched to five matches.
After a quiet start, Werner had the ball in the net after 18 minutes but the forward had strayed offside before meeting Ben Chilwell's low cross.
Madrid enjoyed 73 per cent of the possession in the first 25 minutes and Edouard Mendy made a brilliant one-handed save to keep out a shot from Karim Benzema on the turn.
Yet the LaLiga giant went behind two minutes later. N'Golo Kante's superb turn of pace allowed him to set up Kai Havertz, and although his chip came off the crossbar, Werner was on hand to nod in the rebound.
Benzema was denied again by Mendy, this time from a close-range header, but Madrid struggled to create opportunities despite their dominance of the ball.
Havertz again struck the woodwork with a powerful header just after the restart, but this time Thibaut Courtois breathed a sigh of relief as the ball bounced over and behind.
Mount wasted a glorious chance, driving at Courtois but blasting his finish over, and Havertz was denied by the goalkeeper's leg when through following a simple ball over the top.
Kante also wasted a good opening before Mount at last killed the contest, steering into the net from Christian Pulisic's cut-back after Madrid lost possession in its own half.