Federico Chiesa and Matteo Pessina struck in extra-time to send Italy into the Euro 2020 quarter-finals - but underdogs Austria gave the Azzurri a real scare during their 2-1 win at Wembley on Saturday night.
The substitutes powered their shots home from tight angles in the 95th and 105th minutes of extra-time to put Italy in control, but Austrian replacement Sasa Kalajdzic (104) set up a nerve-jangling final six minutes, with the Italian supporters in the stadium gasping as Michael Gregoritsch shot just wide in the final moments.
The performance was far from what had been expected of an Italy side which had impressed through the group phase, but they eventually extended their unbeaten streak to 31 games and can now look forward to a mouth-watering clash with either Belgium or Portugal on Friday night in Munich.
That prospect seemed in serious doubt midway through the second half of the match. Italy had hit the woodwork through Ciro Immobile in a bright opening 45 minutes but they were sloppy after the break and an inspired Austria - playing in their very first Euros knockout round - saw Marko Arnautovic's headed goal dramatically ruled out for offside by VAR.
Austria did eventually find a way past Gianluigi Donnarumma - the first goal Roberto Mancini's side have conceded in 12 matches, denying them a share of an Italian record - but it was too late and Italy now move on to a test against one of two tournament favourites next week.
How Italy eventually saw off Austria...
Italy had played their group games in Rome but Wembley was effectively Italian turf on Saturday evening, with their fans massively outnumbering the Austria supporters, and, after the Azzurri's national anthem was belted out, those Italian fans were almost immediately jeering Arnautovic, who was booked inside two minutes for a foul on Nicolo Barella.
After a frantic start to the game, Domenico Berardi had a shot blocked, Leonardo Spinazzola fired wide of the near post and Lorenzo Insigne bent a curling effort into the arms of Daniel Bachmann as Italy's quality began to shine through.
- Marco Verratti kept his place ahead of Manuel Locatelli and Francesco Acerbi came in for injured captain Giorgio Chiellini, but Italy otherwise reverted to the side which beat Switzerland in their second group game.
- Austria were unchanged from their final group game against Ukraine.
Barella fired wastefully straight at Bachmann on 16 minutes and Italy were almost punished at the other end when Arnautovic let fly from the edge of the box on a counter-attack, but his powerful effort dipped too late and flew over Donnarumma's bar.
Konrad Laimer blew another opportunity on the break when his pass was cut out by Leonardo Bonucci when Austria were three versus two, but Italy remained on top, with Immobile rifling a fine shot against the woodwork from 25 yards on 32 minutes.
Spinazzola had an optimistic penalty appeal waved away when he tried to get through a crowd of Austrian defenders and then saw a shot parried around the post as the clock ticked towards 45 minutes - but there was no way through for the dominant Italians in the first half.
- How the teams lined up | In-depth stats and analysis
- Subscribe to the Sky Sports Football Euros Podcast
The tables turned after the interval, though, when Arnautovic drove wide, David Alaba bent a free-kick just over the bar from the edge of the Italy area, and Marcel Sabitzer's effort was deflected behind by Bonucci after the centre-back had headed a corner over at the other end.
It had been a sluggish start to the second half from the favourites and incredibly they looked to have fallen behind when Arnautovic headed in Alaba's flick-on from close range. However, a VAR check spotted the former West Ham man had just strayed offside and the goal was chalked off to wild celebrations from the Italy supporters.
Italy bounced back with a shot wide from sub Manuel Locatelli and a chip off target from Insigne but continued to look vulnerable at the back, with Austrian penalty appeals ignored when Pessina caught Stefan Lainer at a free-kick.
At the other end, Berardi got a spectacular scissor kick all wrong when he had time to bring the ball down on 83 minutes, and Austria stood firm from a late free-kick to send the game to extra-time.
Italy were galvanised in that additional half hour, though, and after Chiesa had fired straight at Bachmann from the right side of the box, he made no mistake moments later, taking an extra touch in the area before lashing past the goalkeeper.
The goal broke Austria's resistance and, after an Insigne free-kick was well saved, Pessina put Italy on the brink, firing home after a scramble in the penalty box.
Gregoritsch drew a superb stop from Donnarumma and Sabitzer shot wide as Austria tried to salvage something late on and incredibly they set up a dramatic conclusion, when Kalajdzic headed in at the near post from a corner.
It was the first goal Italy had conceded in 1,168 minutes and Austria went close to an equaliser when Gregoritsch shot wide in the final seconds.
But the full-time whistle sparked celebrations from the Italy players and their supporters, who will hope to return to Wembley for the semi-finals.
What the managers said...
Italy boss Roberto Mancini: "We knew we had to suffer because Austria are the typical side who do not allow to play well. The substitutes made the difference for us, but everybody gave their best tonight. I'm happy because the lads gave everything to win even when we were tired."
Austria head coach Franco Foda: "We are all disappointed, of course. But the whole of Austria can be proud of this team. At the start, we wanted to attack high, but Italy were too strong and were able to play their way through our press. I have never received so many compliments from an opponent.
"It was incredible how the team kept it alive in extra-time. It was a great game. You saw over 120 minutes that it was a very mature performance. Now it's about backing that up when we return in September. You saw that the team was hungry and had a good spirit and a good plan. From September, we need to prepare ourselves as best as possible because we want to go to the World Cup in Qatar."
Optat stats - Italy come good in extra-time
- This was Italy's eighth game at the European Championship to go to extra time, more than any other side in the history of the competition. Their two goals tonight were their first ever goals in the additional 30 minutes.
- This was just the second match in European Championship history to see as many as three goals scored in extra time, after France vs Portugal in 1984.
- After managing just two shots on target in 90 minutes, Italy had four efforts on target in the first 15 minutes of extra time, including their two goals.
- Sasa Kalajdzic's goal for Austria was the first Italy have conceded since October 2020, ending a run of 19 hours and 28 minutes without conceding for the Italians.
- Despite playing just 157 minutes at Euro 2020 so far, Marco Verratti has created more chances than any other player for Italy (9).
Italy play the winner of Belgium vs Portugal on Friday night in Munich in the quarter-finals of Euro 2020.