Italy defeated Belgium 2-1 on Friday to set up a Euro 2020 semi-final against Spain, as Lorenzo Insigne’s wonder strike proved to be the winning goal in Munich.

Nicolo Barella put Italy, now on a record 32-match unbeaten run, ahead before Insigne curled home in the 44th minute.

Romelu Lukaku pulled one back from the spot before half-time but Belgium, the world’s top-ranked side, could not find an equaliser and Italy will face Spain at Wembley on Tuesday for a spot in the final.

Belgium sorely missed their captain Eden Hazard, ruled out by a hamstring injury, even as Kevin De Bruyne won his race to shake off an ankle injury.

The Manchester City playmaker showed why the medical staff worked around the clock to get him fit by regularly causing Italy problems, but Romelu Lukaku twice was denied by Gianluigi Donnarumma.

Italy had the ball in the net on 13 minutes when Leonardi Bonucci chested the ball past Thibaut Courtois from a free-kick, but the goal was disallowed by VAR for an offside against captain Giorgio Chiellini.

Marco Verratti and Youri Tielemans both earned yellow cards for midfield tussles involving the pair.

Also read: Euro 2020: Spain beats Switzerland on penalties, through to semis

Verratti was booked for holding Tielemans in a tackle, while the Belgian picked up a yellow card moments later for clattering the Italian.

Italy broke the deadlock with 31 minutes played.

When Belgium failed to clear, Verratti played the ball into Barella, who stayed on his feet, squeezed past two defenders and drilled across Courtois.

A piece of brilliance on 44 minutes saw Napoli’s Insigne double the Italy lead when he was allowed to dribble to the edge of the area and then curl his shot inside the post.

However, Belgium got back into the game when a rush of blood saw Giovanni Di Lorenzo concede a penalty for using his elbow to brush off Jeremy Doku, filling in for Hazard.

Lukaku stepped up and rifled in the resulting spot kick to halve the deficit.

Also read: Spain win the match, Switzerland and keeper Yann Sommer win social media

With an hour gone, Belgium had the best chance of the second half, coming agonisingly close to an equaliser, when De Bruyne’s cross led to Lukaku having his shot blocked by the thigh of Leonardo Spinazzola.

Martinez brought on fresh legs upfront with Dries Mertens and Nacer Chadli for the final 20 minutes.

There was an almost instant impact when Mertens fed Chadli, whose cross-cum-shot was deflected by Di Lorenzo just out of the reach of Lukaku and Thorgan Hazard.

With time running out, Doku fired over after beating three defenders, while a last-gasp De Bruyne free-kick also failed to beat the Italy defence as the Azzurri clung on.