Atletico start the game, immediately went forward and scored 50 seconds into the action as the visitors took a short corner and Antoine Griezmann’s cross was deflected at the near post and poked home by Julian Alvarez at the far. It was a shocking start.
Ferran Torres missed a glorious one-on-one chance soon after but Pedri got Barcelona back into the game in the 19th minute when he slotted in Jules Kounde’s cutback.
Pau Cubarsi levelled proceedings less than two minutes later as the teenager buried a header from Raphinha’s dangerous corner. And then four minutes before half-time, Barca’s turnaround was in full swing when an unmarked Inigo Martinez nodded in Raphinha’s fierce corner to make it 3-2.
Atletico, who counter-attacked at every opportunity and with astounding speed, nearly made it 3-3, only for Szczesny to push away Griezmann’s goal-bound effort early in the second half.
Then a moment of magic from Lamine Yamal in the 74th minute made it 4-2 as the 17-year-old waltzed past Atletico’s defence, before perfectly setting up substitute Robert Lewandowski to score from two yards out.
Marcus Llorente set up a frantic end to the game with a rasping drive into the corner in the 84th minute and then Sorloth came back to haunt the Blaugrana again when he slotted past Szczesny deep into second-half stoppage time. Both teams will head to Madrid for the return leg with the semi-final on a knife edge.