City appeared to be heading to a second successive final when Riyad Mahrez put them two goals ahead in the tie with 17 minutes left, but Rodrygo struck twice in the 90th and 91st minutes to force extra time.
Benzema nervelessly slotted home his 15th goal of this season's Champions League from the spot after he was fouled by Ruben Dias, sending the 13-time European champions through 6-5 on aggregate to the final in Paris on May 28.