Madrid's young forward Gonzalo Garcia, just 19, opened the scoring in the 34th minute after a rapid counterattack. The move started with Trent Alexander-Arnold, who slotted into midfield on his debut, linking with Valverde and VinÃcius Jr before Rodrygo provided the final assist.
But Madrid's lead didn't last long. Just seven minutes later, a defensive lapse led to Raul Asencio pulling down Marcos Leonardo in the box. VAR confirmed the penalty, and Rúben Neves converted coolly to make it 1â-1.
Madrid pushed harder in the second half. Arda Guler came off the bench and struck the woodwork with a curling effort.
Despite enjoying more possession and territory, Madrid struggled to break down Al-Hilal's organized defense, anchored by keeper Yassine Bono, who was exceptional throughout.
In stoppage time, VAR awarded Real Madrid a second penalty after a clear foul on Camavinga. Federico Valverde stepped up, but Bono made a brilliant save to deny the Spaniards a dramatic late winner.