Belgium have been eliminated from the 2022 World Cup as they failed to beat Croatia in a goalless draw at Ahmed bin Ali Stadium.
Thibaut Courtois was required to make a handful of saves before substitute Romelu Lukaku hit the post as Roberto Martinez's side chased a winner. Lukaku squandered a handful of late chances as the Red Devils spluttered up front, bringing their tournament to a premature end.
2018 runners-up Croatia held firm in defence to qualify from Group F in second place, with Morocco's victory over Canada taking them through as group winners.
A first-minute blitz from Croatia nearly saw Ivan Perisic open his scoring, but his half-volley from Luka Modric's lofted pass fizzed past the far post.
Morocco took the lead early on in their clash with Canada - that game went into half time at 2-1 - leaving Croatia in second alongside Morocco who would go through as group winners.
Dries Mertens produced a finish which lacked any calm or poise to balloon a nice opening clear of the bar, while he couldn't get enough on Leander Dendoncker's pass late in the first half from close range.
Croatia struggled to create any chances of real quality, with Marko Livaja heading comfortably over from Borna Sosa's cross.
One hapless moment of drama came courtesy of some joke officiating and use of VAR. Anthony Taylor originally gave a penalty for Yannick Carrasco's loose challenge on Andrej Kramaric, only for the Premier League referee to be pulled to the touchline to judge a potential offside.
The second half immediately saw the introduction of Lukaku and he got his first shot away quickly, heading straight at Dominik Livakovic. A quick retort from Croatia saw Josko Gvardiol drive forward and pick out Mateo Kovacic, but the Chelsea midfielder's shot was palmed over by Thibaut Courtois.
The Real Madrid goalie was needed again soon after to keep out another Kovacic drive, while he also repelled club teammate Luka Modric's strike away from goal.
The second half's furious pace in comparison to the first continued as Belgium attacked. Kevin De Bruyne played in Carrasco who was quickly blocked by Josip Juranovic before the rebound was clattered against the post by Lukaku.
The on-loan Inter striker's bad afternoon got worse when he ballooned a header over with Livakovic nowhere, though the ball looked to have gone out of play.
The perfect final touch continued to evade Lukaku as Livakovic saved before Gvardiol denied him with a monstrous challenge, with Croatia holding out for the draw.
It results in an early elimination for Martinez and Belgium, with many of their ageing stars expected to call time on their international careers. While Croatia's legendary core of Modric, Perisic, Brozovic and co. continue on to the knockout stages, Belgium's golden generation have bowed out with the limpest of showings.
1. Croatia (4-3-3)
GK: Dominik Livakovic - 4/10 - Really, really, really sketchy in his box but somehow lived to tell the tale.
RB: Josip Juranovic - 6/10 - Wonderful sliding challenge to block Lukaku's goal-bound shot. Loose on the ball occasionally.
CB: Dejan Lovren - 6/10 - Stayed back as the more proactive Gvardiol led the Croatian defence. So unsure of his surroundings and looked nervy.
CB: Josko Gvardiol - 9/10 - Consistently drove forward from defence, starting attacks with quick feet. Recovered the ball frequently and didn't waste it. A monstrous performance.
LB: Borna Sosa - 7/10 - A consistent threat on the left with some searching deliveries from the left and pot shots from distance.
CM: Luka Modric - 7/10 - Constantly received possession and created space as he and Brozovic played through Belgium. Saw an effort denied by Courtois.
CM: Marcelo Brozovic - 7/10 - Became increasingly involved in some lovely interplay with his esteemed midfield colleagues.
CM: Mateo Kovacic - 7/10 - Came close twice at the second half, twice being denied by Courtois.
RW: Andrej Kramaric - 5/10 - Scored against Canada but didn't offer much of a threat here and came off after an hour.
ST: Marko Livaja - 6/10 - Headed over in the first half. Linked play nicely, setting up a Modric strike which was saved.
LW: Ivan Perisic - 5/10 - Started brightly with a shot which whizzed just past the post. Certainly not short on effort but final product eluded him.
SUB: Mario Pasalic (64' for Kramaric) - 6/10
SUB: Bruno Petkovic (64' for Livaja) - 6/10
SUB: Lovro Majer (90' for Kovacic) - N/A
Manager: Zlatko Dalic - 7/10 - Croatia's midfield was too experienced for Belgium to compete with, with Dalic setting his side up well to combat the Red Devils.
2. Belgium (4-2-3-1)
GK: Thibaut Courtois - 8/10 - His 100th appearance for Belgium and did well to deny Kovacic twice at the start of the second half. Croatia would have been out of sight without Courtois.
RB: Thomas Meunier - 7/10 - Fun battle with Perisic, one he edged after the Tottenham man's first-minute chance.
CB: Toby Alderweireld - 6/10 - As assured in possession as always and tried to drop long balls over the top of Croatia's defence.
CB: Jan Vertonghen - 6/10 - Made a couple of interventions to deny Croatia, including a one-on-one with Perisic.
LB: Timothy Castagne - 6/10 - Saw plenty of the ball and kept hold of it, but struggled to threaten in the final third.
CM: Leander Dendoncker - 6/10 - Nice run into the box set up Mertens for a half-chance. Picked up a booking in the second half.
CM: Axel Witsel - 5/10 - Sluggish across the turf in midfield and still doesn't look capable of bossing important World Cup games.
AM: Dries Mertens - 4/10 - Curled over with Belgium's best opening of the first half. Couldn't get enough on a Dendoncker ball to divert it goalwards. Hooked off at half time.
RW: Kevin De Bruyne - 7/10 - Belgium only looked threatening when De Bruyne was in possession. Picked out a couple of inviting passes but none of his teammates could match his level.
ST: Leandro Trossard - 5/10 - Was a little wasteful with some errant passing and came off having offered little threat.
LW: Yannick Carrasco - 5/10 - One example of dazzling feet got Carrasco in on goal, but Juranovic's block denied him.
SUB: Romelu Lukaku (46' for Mertens) - 2/10 - Struck the post when he had to put Belgium ahead. Missed chance after chance and clearly isn't sharp right now.
SUB: Thorgan Hazard (59 for Trossard) - 5/10
SUB: Jérémy Doku (72' for Carrasco) - 5/10
SUB: Youri Tielemans (72' for Dendoncker) - 5/10
SUB: Eden Hazard (87' for Meunier) - N/A
Manager: Roberto Martinez - 1/10 - How hard is it to grab Kevin, say 'You play centrally and boss everything out there', and just let him get on with it? No? Play him on the right, you say? No wonder Belgium have gone out at the group stage.
Player of the Match - Josko Gvardiol
Harry Symeou hosts Jack Gallagher and Toby Cudworth to look back on Germany '06 as part of the 'Our World Cup' series. We take a trip down memory lane - join us!
If you can't see the podcast embed, click to download or listen to the episode in full!