A crowd of 66,014 in Miami on Saturday watched goals from Lionel Messi and Ivan Rakitic give Barca an early lead before Mateo Kovacic and Marco Asensio pulled Real level.
The spectators at the Hard Rock stadium were then treated to a prolonged half-time break with music, lights and fireworks more akin to the Super Bowl.
When the game eventually restarted, Gerard Pique steered in a Neymar free-kick to give last season’s Copa del Rey winners victory over the reigning Spanish and European champions.
Brazil forward Neymar played for 72 minutes as speculation continues about a world record 220m euros (£197m) move to Paris St-Germain.
The 25-year-old was left clutching an ankle in the opening minutes of the game. However, he recovered to set up Rakitic after just seven minutes, before delivering a pin-point free-kick for Pique in the second half.
“I don’t want to speculate about Neymar,” said Barcelona head coach Ernesto Valverde after the match. “I always try to talk about things that happen rather than things that might happen.
“We are going to wait. From my perspective, we have Neymar in our team, we count on him and we have to see.”
PSG full-back Dani Alves, a former Barcelona team-mate of Neymar, has urged his compatriot to “be brave” when making a choice about his future.
“It’s an important decision for him and it’s the kind of decision men have to make,” said Alves.
“I helped him come to Barcelona. I did not make the decision for him, but I told him what Barcelona was like and he decided to move there. Decisions are for the brave.
“Obviously if he were here that would be much better. It’s a decision you have to make carefully – but you have to be selfish.”