Hansi Flick’s men scored four goals in the last 20 minutes of the game to overturn a two-goal deficit at the home of title contenders Atletico Madrid.
Barca arrived the game in dominant form, securing 19 of 21 points in the second half of the season, and failing to lose since the 2-1 defeat against Atletico in the first half of the season.
A win here would leave the Blaugrana at the top of the table, level on points with Real Madrid, who have played one more game. And they did just that but it required a special effort in the final 20 minutes of the game.
As it happened
The game was quite cagey in the first half with both teams being cautious as there was little room for mistakes. However, the game sprung into life at the stroke of half time, as Julian Alvarez finished off a swiping Atletico move to hand them a first-half lead.
Barcelona tried to restore parity, but it was Simeone’s men that doubled the team instead, as two substitutes, Alexander Sorloth and Conor Gallagher came off the bench to combine for the second goal. The Norwegian finished off another fine counter attacking move and the Mattress Makers appeared to be on their way to a win.
However, Barcelona were not ready to give up, as the league’s top scorer Robert Lewandowski scored his 22nd league goal two minutes later to hand them a way back into the game.
Six minutes later they were back on level terms, as Raphinha swung a teasing ball into the box and Ferran Torres, another substitute, headed in for Barca's second goal of the evening.
With the game looking to end in a draw, youngster Lamine Yamal had other ideas, as he let fly from the edge of the box and it went in via a deflection off Reinildo, in the second minute of stoppage time.
Torres put the icing on the cake with the last action of the game to seal the victory for Barcelona.
Flick’s men lead La Liga with 60 points, tied with Real Madrid who have played one extra game, but ahead due to a superior goal difference.
Atletico are third with 56 points.