Italy were pressed and pressed but held their nerve to reach the final of Euro 2020 with a 4-2 penalty shootout win after a 1-1 semi-final draw largely dominated by Spain.
Jorginho stroked home an astonishingly cool spot-kick to settle matters after Spain's Alvaro Morata, who equalised in regular time, was stopped by keeper Gianluigi Donnarumma at Wembley on Tuesday.
The Azzurri were dangerous on counter-attacks but it was against the run of play when they took the lead in the 60th minute. Federico Chiesa collected a loose ball to curl brilliantly into the far corner.
Spain struck a deserved equaliser with 10 minutes remaining when substitute Morata played a neat one-two with Dani Olmo before side-footing home, but they could not find a winner.
Italy now return to London on Sunday for the final against the winner of Denmark and England, who meet on Wednesday.
Reaching the final extends Italy's unbeaten run under coach Roberto Mancini to 33 games - if they make it 34 they will be European champions for the second time after their sole triumph in 1968.
Such a record would make them deserved winners but Spain will rue the several opportunities they had to reach their own first final since their last Euro triumph in 2012.
"We knew that it was going to be a very tough match because in terms of ball possession Spain are the best around," Mancini said. "We tried to dig in when we needed to.
"However, we wanted to make it into the final and we kept trying right until the end."
It was the larger Italian section who cheered loudest when Lorenzo Insigne and Marco Verratti raced clear on a break.
Aymeric Laporte slid in to deny Ciro Immobile at the last moment but the danger was not averted - Chiesa opened his body to guide a shot from 14 metres into the far corner.
Italy managed only one shot in the first half when Emerson, who replaced injured left back Leonardo Spinazzola, grazed the bar in injury-time.
Mikel Oyarzabal's fine dribble set up his captain Sergio Busquets to shoot just over as the second half started with Spain on the front foot.
But Chiesa immediately had a low shot saved and moments later he made no mistake when faced with keeper Unai Simon again.
A miserable night for Oyarzabal was completed when he missed a header from Koke's delicate cross but Morata, with his third goal of the tournament to become Spain's record Euro scorer with six, forced extra-time.
It came down to penalties and after Manuel Locatelli and the otherwise superb Olmo exchanged misses, the sides found the net until Morata stepped up for Spain's fourth kick.
His weak shot was easily saved leaving Jorginho, who won the Champions League with Chelsea, to slot in the winning kick and spark wild celebrations.
"I just want to congratulate my players, we've shown we're a team and we'll continue doing that," said Spain coach Luis Enrique, adding winning and losing was part of elite football.