Lionel Messi scored twice as Barcelona struck three times in the final 13 minutes of the first leg to whisk their Champions League semi-final tie away from a stubborn Bayern Munich side.
The hosts seemed set for a frustrating night before Messi fired a low shot home from the edge of the area.
Three minutes later he skipped past Jerome Boateng and dinked home coolly.
Led by ex-Barca boss Pep Guardiola, Bayern pushed for an away goal and were punished again as Neymar raced clear.
Until the devastating conclusion, the Germans had produced an excellent tactical display.
Bayern Munich failed to get a shot on target for the first time in a Champions League game since losing 2-1 to Bordeaux in October 2009.
Stripped of the twin attacking threats of the injured Franck Ribery and Arjen Robben, they frustrated the hosts for large periods and could have had a goal of their own had Robert Lewandowski connected cleanly with Thomas Muller’s cross.
But while Guardiola’s four trophy-filled years at the Nou Camp had been based on monopolising possession and patient build-up, the Barcelona that has emerged in his absence is a more dynamic animal.
Their attacking trio of Luis Suarez, Messi and Neymar – while never entirely shackled – had seemed well-guarded after an open initial 15 minutes, but they burst into life at the end.
Guardiola predicted before the match that it was “impossible” to stifle Messi, but goalkeeper Manuel Neuer’s hurried free-kick that gifted Barcelona the lead was very avoidable.
As possession turned over the Argentina forward took advantage of a pocket of space to fire home.
If Messi’s first was preventable, his second was irresistible as he left Boateng floundering and deftly lifted the ball over the giant frame of Neuer.
Guardiola’s opening gambit on his return to Catalonia had been a back three of Rafinha, Boateng and Medhi Benatia, but that was hastily re-jigged as an under-staffed defence was initially stretched horribly out of shape.
If that tactical mistake went unpunished, Barcelona were more ruthless as Bayern pushed forward late on and Neymar scampered clear in injury time to seemingly end the tie as a contest.
Bayern require more of the fighting spirit that saw them recover from 3-1 adrift against Porto in the previous round.
Ominously for English teams it was a match that suggested a chasm in class – rather than a statistical anomaly – is behind their recent absence from the latter stages of the competition.