Robbie Brady was Republic of Ireland's hero as his late winner versus Italy booked a last-16 tie with Euro 2016 hosts France.
Ireland knew that nothing less than a win would do against a much-changed Azzurri in Lille, and Brady popped up with an 85th-minute header to send them through.
That came after more late drama at the Stade de France, where Iceland - who would have advanced with a draw - scored in injury time to beat Austria 2-1 and seal a last-16 clash with England.
A defeat to Croatia on Tuesday meant that holders Spain already knew they will face Italy in the next round, while Ante Cacic's team's reward is a match against Portugal, who finished third in Group F after a thrilling 3-3 draw with Hungary in which Cristiano Ronaldo scored twice.
World champions Germany, meanwhile, will take on Slovakia, while Wales - fresh from topping Group B ahead of England - meet another British rival in the form of Northern Ireland.
The other two last-16 ties see Belgium meet Hungary and Switzerland take on Poland.