Robbie Brady’s header five minutes from time sparked wild scenes of celebration in Lille as Ireland ended a much-changed Italy’s 100 percent record at the tournament to set up an enticing last 16 meeting with Didier Deschamps’ French side.
It was Ireland’s first win over Italy in a competitive match since the 1994 World Cup in the United States.
But Martin O’Neill’s men had looked set to be denied by a combination of Italy goalkeeper Salvatore Sirigu and Romanian referee Ovidiu Hategan.
Sirigu, standing in for Gianluigi Buffon in the Italian goal, made a superb save to deny Daryl Murphy, while Hategan twice waved away Irish penalty appeals in the first-half.
However, Sirigu was at fault as Brady nipped in ahead of the Paris Saint-Germain ‘keeper to head into an empty net for the winner.
There was no fairytale ending for Ibrahimovic after the 34-year-old had already announced before the match that he would retire from international football at the end of the tournament.
Ibrahimovic did have the ball in the net midway through the second-half against the star-studded Belgians, but the goal was ruled out for a foul by Marcus Berg in the build-up.
Belgium had a series of chances to kill the game off with Romelu Lukaku particularly profligate.
With six minutes remaining, Radja Nainggolan’s arrowed drive into the far corner ended Swedish hopes to set up a last 16 clash with surprise package Hungary.
Support InfoStride News' Credible Journalism: Only credible journalism can guarantee a fair, accountable and transparent society, including democracy and government. It involves a lot of efforts and money. We need your support. Click here to Donate