Lamine Yamal, Robert Lewandowski, Raphinha and Alejandro Balde were all on target before halftime, after French forward Kylian Mbappe put Real in front in the fifth minute. Raphinha grabbed another in the second half while Rodrygo scored for Real.
Kylian Mbappe put Madrid ahead but a dominant Barcelona hit five in response before their goalkeeper Wojciech Szczesny was sent off in the second half.
LaLiga leaders Real recovered from that setback and are on a five-match winning streak ahead of defending the Super Cup in Jeddah, Saudi Arabia, but coach Carlo Ancelotti is cautious.
Last season, around this time, there was a surprise package in Girona in the top three of LaLiga. However, a year later, the Spanish league has returned to the status quo, with Real Madrid, Barcelona, and Atletico Madrid -- the three giants of Spain -- occupying the top three spots on the table at the end of 2024.
Jude Bellingham and Rodrygo scored second-half goals to help Real to a 3-0 win over Mallorca after Barcelona beat Athletic Bilbao 2-0 in the other last-four clash.
"Our player Luka Modric is out of the game against Mallorca today because of a viral illness," said the Spanish champions in a statement.
The Brazilian winger was dismissed in Madrid's 2-1 victory on Friday for pushing Valencia goalkeeper Stole Dimitrievski in the back of the neck.
"(Luka) is a gift for football and even more for those who can enjoy it up close," Madrid coach Carlo Ancelotti said. "The fans, the players, the coach... for me it's a great gift. The way he prepares for this kind of match, as if it was a final. It's a very important example for our youngsters.
Real Madrid coach Carlo Ancelotti said Sunday it would be "difficult" to be Vinicius Junior after the player was sent off against Valencia.
History beckons for Real Madrid as they chase a record-breaking 15th UEFA Champions League title. Meanwhile, Borussia Dortmund, who are hoping to put an end to a 27-year wait for the trophy, stand in Real's way as determined underdogs. Will Real's experience prevail, or can Dortmund pull off a stunning upset? Tune in to The Daily Star's podcast 'Pitch Perfect' for an in-depth take on this epic showdown.
Real Madrid midfielder Jude Bellingham has been voted LaLiga's Player of the Season after the 20-year-old played a pivotal role in leading the club to their 36th league title.
Real Madrid goalkeeper Thibaut Courtois was not included in Belgium's Euro 2024 squad named on Tuesday as he recovers full fitness following a season marred by injury.
Reaching a final is always a success," the Italian told a news conference on Monday.
The France captain is expected to join Los Blancos at the end of his Paris Saint-Germain contract this summer.
A goalless draw with Real Betis was largely irrelevant with Real confirmed as LaLiga champions and all the European qualification and relegation spots decided, so the evening was about celebrating the 34-year-old Kroos.
Atletico Madrid coach Diego Simeone, on the eve of his side's final LaLiga match against Real Sociedad, said they fell short of their objectives this season and that title winners Real Madrid were the best team in the world.
Kylian Mbappe will bring the curtain down on his Paris Saint-Germain career on Saturday and has the chance to sign off with another trophy in the French Cup final against Lyon.
German soccer player Toni Kroos will retire after the European Championship, the Real Madrid midfielder announced on Tuesday, adding that the Champions League final will be his last game for the Spanish club.
Young Barcelona midfielder Fermin Lopez struck twice to secure his team a hard-fought 2-0 win at Almeria on Thursday in La Liga.