Chelsea midfielder Jorginho eventually dispatched the winning spot-kick after Italy goalkeeper Gianluigi Donnarumma had crucially saved from Alvaro Morata, with Dani Olmo also blazing over for Spain.
Before that, the two teams had been locked in a terrific, tense battle across an absorbing 120 minutes, with Morata coming off the bench to cancel out Juventus team-mate Federico Chiesa’s stunning effort that finished off an incisive Italian counter-attack.
Experienced Juve defenders Giorgio Chiellini and Bonucci were once again influential for Roberto Mancini’s side at Wembley, with the latter, 34, describing the match as the toughest test of his glittering 16-year career to date.
Denmark or England - who lock horns in Wednesday’s second semi-final - now stand between Italy and a first European Championship title since 1968.
“It was the toughest game I have ever played. I congratulate Spain for what they showed, but once again this Italy showed heart, determination and the ability to push through difficult moments,” Bonucci said.
“Now there is one more centimetre to go. It is incredible what we are doing. We will be back here in five days and we must have the same attitude to bring home this trophy that we have lacked for 50 years.”