Angel Correa scored late on as Atletico Madrid beat Barcelona 3-2 in an incident-packed game to reach the Spanish Super Cup final.
All five goals were scored during a wild second half in Jeddah that began with Koke putting Atletico in front, just 21 seconds after coming on as a substitute at the interval.
Lionel Messi equalised and then Antoine Griezmann headed Barcelona into the lead in Saudi Arabia.
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.
In the second half, Messi had a goal ruled out by the video assistant referee for handball while Gerard Pique should have taken the game to extra time but sent his header over the bar.
Atletico’s 20-year-old Portuguese forward Joao Felix, who joined the club for £113m in the summer, was involved in an altercation with Messi in the first half, with the pair going head-to-head.
It was sparked by Barca full-back Jordi Alba appearing to poke his finger in Felix’s face.
A number of players from both sides got involved to separate Messi and Felix, with Luis Suarez having to be pulled away from Stefan Savic.
Victory means Atletico Madrid will face city rivals Real Madrid, who beat Valencia 3-1 on Wednesday, in the final on Sunday.