Riyad Mahrez scored in the 73rd minute to put City 5-3 up in the tie, before Rodrygo grabbed two goals in two minutes and Karim Benzema converted an extra-time penalty to send Madrid to the final with Liverpool in Paris on May 28.
It's the latest unlikely turnaround for Madrid, who had also trailed to Paris Saint-Germain in the round of 16 and Chelsea in the quarterfinals before rallying late to advance.
"There's no better feeling," midfielder Casemiro said. "There's no way to explain this. The best is yet to come...but we have to enjoy the moment. We've eliminated a great team with a great coach, and wow, they play good football."