By SABC Sport
9th February 2023
Goals from Vinicius Junior, Federico Valverde, Rodrygo and Sergio Arribas sealed the win at the Prince Moulay Abdellah Stadium in Rabat.
Ali Maaloul's spot-kick briefly made Madrid sweat but they reached Saturday's final - where they face Al Hilal - and could even afford Luka Modric's late penalty miss.
Hussein El Shahat tested Andriy Lunin - in for the injured Thibaut Courtois - but Madrid grabbed the lead through Vinicius.
The striker had already hit the post before he opened the scoring three minutes before the break.
Al Ahly midfielder Aliou Dieng directed a weak header back towards goal and Vinicius cashed in to beat Mohamed El Shenawy.
Valverde doubled the lead soon after the break when he slotted in after Rodrygo's effort was saved.
Al Ahly reduced the deficit after 64 minutes when Eduardo Camavinga brought down El Shahat in the box and Maaloul converted the penalty.
Madrid could have restored their two-goal advantage with three minutes left when Vinicius was ruled to have been felled in the box.
It appeared the striker slipped but El Shenawy saved Modric's spot-kick.
Yet Carlo Ancelotti's side did add a third in stoppage time when Rodrygo combined with Dani Ceballos to wrap up the win.
Substitute Arribas then added the flourish with a minute of injury time left when he fired in from a Camavinga pass.