Croatia qualified for next year’s FIFA World Cup finals following a goalless draw with Greece in the second leg tie of their playoff fixture on Sunday.
The result gave Croatia a 4-1 aggregate win, after they had won the first leg 4-1 some days earlier.
Earlier in the day, Switzerland scraped through to their fourth finals in a row after a 1-0 aggregate win.
They were held to a goalless draw at home by a valiant and workmanlike Northern Ireland who came desperately close to forcing extra-time on Sunday.
The Swiss qualified 1-0 on aggregate, the tie ultimately being decided by the hugely controversial penalty kick converted by Ricardo Rodriguez in the first leg in Belfast on Thursday.
They were again indebted to Rodriguez on Sunday when he cleared a goalbound header from Jonny Evans off the line in stoppage time as Northern Ireland pressed for an equaliser.
The Swiss, boasting a much more illustrious and talented line-up, could have done it in style as they dominated the first hour but squandered a hatful of chances.
Instead, on a slippery pitch which cut up badly, they relinquished control for the final half hour and were forced onto the back foot, fraying the nerves of the home crowd.
READ: Morocco qualifies for Russia 2018 after defeating Ivory Coast 2-0
“This is a devastating moment but also a very proud moment,” said Northern Ireland manager Michael O‘Neill, who described the manner of their defeat as “cruel”.
“We’ve gone toe-to-toe with a very good side and it was decided by a really poor decision, a penalty kick that should never have been made.”
Forward Haris Seferovic was the biggest culprit and was jeered off by the home crowd when he was substituted by Breel Embolo.
After failing to muster a shot on target in the first leg, Northern Ireland forced Swiss goalkeeper Yann Sommer into action after only three minutes.
This was when he tipped a 25-metre shot by Chris Brunt over the bar.
Seferovic glanced a free header wide from Xherdan Shaqiri’s cross and shot wide of the near post when he was released by Steven Zuber as the Swiss began to take control.
Numerous other chances went begging and the Swiss lost their swagger as the game wore on.
They survived one fright when Conor Washington headed wide from James Ward’s cross at the end of a quick break.
Another break down the left by Washington ended with George Saville shooting weakly at Sommer.
Seferovic should have settled it in the 85th minute but instead shot high and wide — and was substituted almost immediately.
“I‘m very satisfied with my team and with what they have achieved, not just today because it’s been a long process,” said Switzerland coach Vladimir Petkovic.
Looking forward to the finals, he said: “We want to go as far as possible. We will take it match by match, opponent by opponent and we’re not setting any limits.”