Angel Correa scored late on as Atletico Madrid stunned Barcelona 3-2 in Saudi Arabia to reach the Spanish Super Cup final.
After a drab first half, substitute Koke’s clinical strike put Atletico ahead early in the second half.
Lionel Messi equalised with a driven finish from just inside the box after holding off the challenge of several Atleti defenders.
Barca’s big-money signing Antoine Griezmann headed them into the lead after Jan Oblak did well to parry Luis Suarez’s header.
The Catalans seemed to be in control as Messi had a second goal harshly ruled off for handball, while Gerard Pique also had a goal disallowed after VAR check.
But Ernesto Valverde’s men imploded in the final 10 minutes as Alvaro Morata converted a penalty to make it 2-2 before Correra ran through and grabbed the winner with a powerful strike that was too strong for Neto.
Barca still had a chance to take the game to extra time but Pique sent his header over the bar.
Victory means Atletico Madrid will face city rivals Real, who beat Valencia 3-1 on Wednesday, in the final on Sunday 7:00pm Nigerian time.