Barcelona have more than one foot in the final of this season's Champions League, with the Spanish club currently 5-1 ahead on aggregate at the interval of their semi-final second leg against Bayern Munich.
The home side opened the scoring on the night through Medhi Benatia early on, but a brace from Neymar has left the visitors with a 2-1 lead on the night and four-goal lead overall.
Both managers kept faith with their XIs from the first leg, with Bayern boss Pep Guardiola resisting the temptation to recall Mario Gotze in what was the surprise decision.
Bayern started on the front foot and threatened inside three minutes when Thomas Muller slid a pass towards his fellow German Phillip Lahm, but Barca stopper Marc-Andre ter Stegen was out to narrow the angle.
Barcelona had a wonderful chance to take the lead in the fifth minute when Ivan Rakitic broke through on goal, but Manuel Neuer was on hand to make the save, before the German tipped a Jordi Alba cross wide for a corner. Bayern immediately broke down the other end, but Thiago's effort from the edge of the box was blocked.
Bayern were ahead on the night after seven minutes, however, when Benatia headed a Xabi Alonso corner into the bottom corner to cut the deficit to 3-1 on aggregate.
The home side had another half-chance after 12 minutes when Muller set up Robert Lewandowski inside the box, but Javier Mascherano was across to make the challenge, before Bastian Schweinsteiger fired a rising effort over the crossbar.
Barcelona were on level terms after 15 minutes, however, when Lionel Messi set up Luis Suarez, who squared for Neymar and the Brazilian could not miss from close range as he scored for the seventh game in a row.
Bayern remained a threat, however, with Ter Stegen forced into a smart save to deny Muller as the score stood at 1-1 on the night with 20 minutes on the clock. Ter Stegen was again called into action seven minutes later when he held on to a low poked attempt from Lewandowski.
Messi then came close down the other end - forcing a smart save from Neuer, before Muller fired straight into the arms of Ter Stegen during an end-to-end period of the match.
Barcelona had their second of the match in the 29th minute when Suarez again set up Neymar and again, the Brazilian finished into the bottom corner to leave Bayern needing at least five goals to advance into the final next month.
Bayern came close to levelling the score on the night after 38 minutes when Schweinsteiger met a cross from the left, but Ter Stegen was on hand to make another smart save, before the Barca goalkeeper somehow kept out a close-range strike from Lewandowski.