Brahim Diaz scored a brilliant winner. This goal gave Real Madrid a slender advantage over city rivals Atletico. It happened after the first leg of their Champions League last-16 tie.
Rodrygo put the hosts ahead inside four minutes in the Bernabeu. He sprinted past Javi Galan and chopped inside the box. Then, he bent a wonderful hit past Jan Oblak.
Atletico, though, quickly settled into the game and levelled in the 32nd minute with another wonderful goal.
The in-form Julian Alvarez picked up the ball on the left side of the box. He wrongfooted Eduardo Camavinga. Then he whipped a spectacular curling strike around Thibaut Courtois and in off the post.
It was the Argentine striker’s seventh goal in nine appearances in the competition this season.
But it was Diaz, another former Manchester City player, who claimed the decisive goal in an electric Madrid derby.
The Spaniard sent Atletico defender Jose Gimenez to the floor. He skilfully waltzed into the box. Then, in the 55th minute, he drove a low shot into the far corner.
The 25-year-old midfielder had stepped up in Jude Bellingham’s absence. The England international was serving a one-game suspension. He picked up his third yellow card in the competition against Manchester City earlier this month.
Bellingham will be available for the defending European champions. They will make the short trip to the Riyadh Air Metropolitano. The return leg is on Wednesday, 12 March (20:00 GMT).
Moments of magic decide derby outcome
This was a Madrid derby defined by three moments of outstanding individual brilliance.
First, it was Rodrygo. The Brazilian beat Galan for pace. He sprinted on to Federico Valverde’s pass. Then, he cleverly cut back and confidently swept Real into an early lead.
He had a penalty appeal waved away moments later. He again got the better of Galan, who appeared to grab hold of Rodrygo. Galan stepped across him in the box.
But the opening strike was soon overshadowed by Alvarez’s stunning effort. The Argentina international has hit a purple patch for Atletico in recent weeks. His audacious effort made it six goals in his last seven games.
The 25-year-old left Manchester City for £81m in the summer. He has been Atletico’s key figure in this campaign. His goal against Athletic Bilbao on Saturday moved them two points above Real. They are now one point behind leaders Barcelona in a tight La Liga title race.
But Diego Simeone’s men were unable to push on and claim a rare win at the Bernabeu. Diaz wrapped up victory for Real. He linked up well with Vinicius Jr before his darting run into the box ended with a delightful finish.
The game seemed to lack the hostile atmosphere and aggression of a typical derby between them. Diaz’s celebration was the only yellow card of the match. He jumped into the jubilant crowd.
Real have won the previous five Champions League meetings against Atletico in knockout ties. They had a late chance to claim a two-goal cushion for the second leg. But Kylian Mbappe’s poor ball to Vinicius Jr meant the Brazilian missed out on a tap-in.