Vinicius Junior and Federico Valverde scored either side of the half-time break to send Real Madrid two goals ahead, before Ali Maaloul's 65th-minute penalty set up a potential grandstand finish.
Luka Modric missed a late penalty for Los Blancos, but the Spanish and European champions scored a third and fourth in second-half stoppage time through Rodrygo and Sergio Arribas.
Carlo Ancelotti's side will take on Al-Hilal in the showpiece event on Saturday, with the Saudi Arabian outfit recording a 3-2 win over Flamengo in the competition's first semi-final.
Los Blancos are the most successful side in the history of this tournament, having lifted the trophy on four occasions, with their last triumph coming back in 2018.
Real Madrid's first half-chance of the match came for Rodrygo in the 17th minute, but the Brazil international's effort was blocked behind for a corner, with Al Ahly taking up a strong defensive shape.
The Saudi Arabian side had two opportunities of their own in the 19th and 26th minute, but Mohamed Sherif fired over the crossbar from a decent area before Mohamed Abdelmonem headed high of Andriy Lunin's goal in the team's next chance in the last-four encounter.
Real Madrid's first serious opportunity of the night came in the 28th minute, with Rodrygo finding Vinicius in a dangerous area, but the left-sided forward dragged his effort wide of the post.
Rodrygo then fired wide of the Al Ahly post in the 30th minute before Hussein El Shahat forced a smart save from Lunin, who started for the second successive match due to Thibaut Courtois's absence.
Real Madrid managed to make the breakthrough in the closing stages of the first period, with Vinicius making the most of a poor mistake from Mahmoud Metwaly before racing into the Al Ahly box and lifting the ball over the onrushing goalkeeper Mohamed El-Shenawy.
Los Blancos then doubled their lead early in the second period through Valverde, who showed composure to finish from close range after Rodrygo had been denied by the Al Ahly goalkeeper.
Real Madrid had a shout for a penalty just before the hour when Vinicius tumbled inside the box, but Al Ahly ultimately survived what was another dangerous moment.
The Egyptian outfit then managed to halve the deficit in the 65th minute, with Maaloul scoring from the penalty spot after Eduardo Camavinga had brought El Shahat to the ground.
Al Ahly then had a golden chance to level in the 68th minute when El Shahat found Afsha, but the attacker fired over the crossbar from inside the box, before Lunin did well to keep out an attempt from Taher Mohamed 10 minutes later.
Modric missed an 87th-minute penalty for Los Blancos after Vinicius had been brought to the ground, but the La Liga outfit managed to score a third in stoppage time through Rodrygo, who picked out the far corner after impressively combining with Dani Ceballos.
Arribas then came off the bench to register his first goal for the club in the eighth additional minute, with the 21-year-old finding the bottom corner with a smart effort to add gloss to the scoreline.
Real Madrid will now be assessing the fitness of Karim Benzema, Courtois and Eder Militao, with Ancelotti claiming during his pre-match press conference that the trio could fly out for Saturday's final.