Iceland's World Cup dream was ended by Ivan Perisic's late victor in a 2-1 defeat to Croatia, who themselves topped Group D. Gylfi Sigurdsson levelled with a penalty but Ivan Perisic grabbed a last-gasp victor.
Argentina took second place and will face France after a 2-1 win against Nigeria.More news: Furious Maradona wants meeting with Argentina squad
Iceland was rewarded in the 76th minute when second-half substitute Dejan Lovren handled the ball and Sigurdsson rifled the resulting penalty into the roof of the net.
Croatia showed none of that lethargy to start the second half, however, and it was in the 53rd minute when Badelj broke through.
Iceland challenged almost immediately, with a first headers by Ingason tipped over the crossbar by Kalinic and a second glancing off of it.
Iceland pushed forward, and threw men forward in search of a victor which looked increasingly like it would send them through.More news: Messi's Indian fan found dead in Kerala river
But as Iceland strained for the victor and a berth in the last 16 it was Croatia who threatened, free-kicks by Perisic and Rakitic worrying Halldorsson. In 2013, the two were pitted together in the playoff round of UEFA World Cup qualifying, with Croatia denying Iceland its first trip to the World Cup.
The chance was to prove a signifier for an improved Croatia who came back just a few minutes later to finally break the deadlock.
Needing a point to make certain of top spot, Croatia dominated early on, with Real Madrid pair Modric and Mateo Kovacic dictating the tempo without creating clear chances.
Iceland's Gylfi Sigurdsson became the second player to have scored and missed a penalty at the 2018 World Cup, after Portugal's Cristiano Ronaldo.More news: Superhero suit complaints? Try wearing heels, Evangeline Lilly tells male co-stars
Milan Badelj of Croatia celebrates after scoring his team's first goal against Iceland.