Italy needed extra time to see off battling Austria at Wembley and set up a Euro 2020 quarter-final against Belgium or Portugal.
Austria marked their first appearance in the knockout stage of the European Championship with a tireless performance to give their much-fancied opponents a scare.
Marko Arnautovic had a headed goal disallowed after a VAR check for offside in normal time when the game was goalless before goals from substitutes Federico Chiesa and Matteo Pessina sent Italy through.
Chiesa showed terrific technique to bring the ball down and beat Daniel Bachmann from an angle while Pessina, who scored in the group game against Wales, doubled the score from range.
Austria pulled a goal back through Sasa Kalajdzic’s brave header, the first goal Italy have conceded in 12 games, but the Azzurri march on.
Italy will meet the winners of Sunday’s last-16 game between Belgium, the top-ranked side in the world, and holders Portugal in the quarter-finals on 2 July.