Spain have reached the Euro 2020 semi-finals after prevailing 3-1 in a penalty shootout against Switzerland.
Scores were level at 1-1 after extra-time despite Switzerland being reduced to 10 men.
Mikel Oyarzabal struck the decisive spot-kick after Gerard Moreno and Dani Olmo had converted for Spain and Sergio Busquets and Rodri squandered their shots.
Spain keeper Unai Simon saved from Switzerland's Manuel Akanji and Fabian Schar while Ruben Vargas hammered his shot over the bar.
Spain took an eighth-minute lead when a Jordi Alba strike took a heavy deflection off Daniel Zakaria and went into the net but Switzerland levelled in the 68th when Xherdan Shaqiri cashed in on a mix-up in defence.
Switzerland's cause was then complicated by Remo Freuler being shown a straight red card in the 77th minute, but they held on to force the extra period and somehow survived a Spain onslaught to make it to spot-kicks.
But after beating France 5-4 on penalties in the last 16 by scoring all their kicks, only Mario Gavranovic could beat Simon and the Swiss were left heartbroken, still waiting to win a European Championship quarter-final.
Spain, though, are rewarded with a trip to Wembley to face either Belgium or Italy and are dreaming of a first major final since winning Euro 2012.