Having come on as a second half substitute on 58 minutes he cut inside Gerard Pique and curled a shot past Marc Andre ter Stegen to make it 2-1 ripping off his shirt in wild celebration.
But when he then went down in the penalty area under pressure from a Samuel Umtiti’s push he was shown a second yellow. He pushed referee Ricardo De Burgos before he walked and could now face a long ban.
Real Madrid only needed the late strikes because Lionel Messi scored a penalty 14 minutes from time sending Keylor Navas the wrong way. The keeper’s dive almost as bad as Luis Suarez who was untouched as he went down in the area to win the spot-kick.
Real Madrid had scored the first when Gerard Pique turned the ball past his own keeper. Madrid substitute Marco Asensio got a brilliant third to make it 3-1.
It was a miserable night for Barcelona. The arrival of Philippe Coutinho and Ousmane Dembele cannot come soon enough for them.
As Neymar was breaking his duck in Ligue 1 they were lame ducks for most of this first clasico of the season and will need to show more in the second leg on Wednesday to turn things around.
It was a strange meeting of Spain’s two biggest teams. Madrid were in their Aqua-Marine third kit and had Ronaldo was on the bench.
Barcelona were doing their best to pretend Neymar will not be missed but there was a sizeable magic deficit that they can only hope to address in what remains of the transfer window.
Madrid had started the brighter of the two teams and Isco was at the heart of everything. There is a suggestion that his new five-year contract will have a €700m buy-out clause and you could see why they want him protected on this showing. He robbed possession high up the pitch only for Gareth Bale to fail to connect with his pass and then wriggled clear on the left and fizzed a shot just wide of Ter Stegen’s near post.
On the quarter hour Messi found Suarez and he tested Navas with a shot.
Two-thirds of the old front-three were doing their best to cover the absence of the departed Brazilian. Gerard Deulofeu had done well in the last pre-season friendly but he was found wanting in this more competitive fixture and hooked on the hour.
That substitution on the hour was telling. As Barcelona brought on Denis Suarez for Deulofeu, Real Madrid were able to bring on Ronaldo.
Barcelona had their chances in the first half. Messi was chopped down by Bale and picked himself up to skim the free-kick just over Keylor Navas’ bar. Pique then tried to punch Andres Iniesta’s corner past the Real Madrid keeper and was shown a yellow card.
Isco created another chance for Madrid five minutes before the break when he crossed from the left, Bale thumped a first time shot goalwards only for Ter Stegen to push it to safety.
There were two late yellow cards in the first half. Messi was harshly booked for a crunching challenge on Casemiro and Bale then brought down Sergio Busquets. It was still 24 degrees and humid and early season fatigue was leading to some sloppy play as the referee blew his half time whistle.
The game had gone slightly flat although supporters responded with jeers to the appearance of Ronaldo warming up at the start of the second half.
He celebrated on the touchline when Pique turned the ball past his own keeper to give Real Madrid the lead. He almost doubled the lead after coming but the offside flagged cut short his celebrations.
Then came his moment of glory – he milked it too much by pulling off the shirt and when that earned him a caution he set himself up for the sending off moments later as he went down under Umititi’s challenge.
There was one more twist of the knife for Barcelona supporters as Marco Asensio scored a spectacular third into the roof of Ter Stegen’s net. He is the kid they so nearly signed three years ago. They dithered and he ended up at Madrid where most of the silverware seems to have gone in Spain ever since.