Italy set up a Euro 2020 semifinal clash against Spain after first half goals from Nicolo Barella and Lorenzo Insigne led the Azzurri to a 2-1 win over Belgium in an entertaining encounter in which both sides created a number of chances.
Italy opened the scoring in the 31st minute when Barella picked up the ball, forced his way past defenders in the area and fired home.
Insigne doubled the lead in the 44th minute after collecting the ball on the left and skipping beyond a defender before unleashing a long-range shot that flew past Thibaut Courtois.
Romelu Lukaku clawed a goal back for Belgium from the penalty spot just before the break after Giovanni Di Lorenzo put an arm on Jeremy Doku and pushed him to the ground.
Spain earlier squeezed past Switzerland 3-1 in a penalty shootout to reach the last four after their battling opponents clung to a 1-1 draw after extra time despite going down 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 kicks.
Spain keeper Unai Simon saved from Switzerland's Manuel Akanji and Fabian Schar while Ruben Vargas hammered his shot over the bar.
In open play, 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 the Spain 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.
- Reuters