Seferovic’s 16th-minute effort and Duffy’s misfortune at the death secured a 2-0 win for the home side at the Stade de Geneva on a night when skipper Seamus Coleman was sent off for two bookable offences.
Had it not been for keeper Darren Randolph, who saved Ricardo Rodriguez’s second-half penalty after denying Seferovic a second with a smart save, and the post which kept out a Fabian Schar header, the Swiss might have won much more comfortably with Ireland rarely looking like claiming the victory which would have booked their place at next summer’s finals.
The pitch had passed an inspection around two hours before kick-off after torrential rain throughout the day.
Even a first start for teenager Aaron Connolly did not provide the spark required as Mick McCarthy repeatedly tinkered with both his system and personnel in an ultimately vain battle for a foothold in the game.
Elsewhere in Group D, minnows Gibraltar came from 2-0 down to level against Georgia only to fall to Giorgi Kvilitaia’s late goal.
Switzerland v Ireland Opta facts
- Republic of Ireland have suffered their first defeat under Mick McCarthy since he returned as boss last year, and for the first time under him since they also lost to Switzerland during his final game in charge of his first stint as manager in October 2002.
- Republic of Ireland still sit top of their European Championship Qualifying group, despite suffering their first defeat of the campaign this evening (P7 W3 D3 L1), leaving Denmark as the only remaining unbeaten side within the group.
- After scoring 12 consecutive penalties for club and country between 2014 and 2018, Switzerland’s Ricardo Rodriguez has now missed two of his last five such spot-kicks (one for AC Milan and one tonight).
- Republic of Ireland have failed to score in back-to-back competitive matches under Mick McCarthy for the very first time, having never done so during his first reign as manager between 1996 and 2002.
- Seamus Coleman became the first Republic of Ireland player to be red carded in a competitive international since Shane Duffy was sent off during their EURO 2016 last 16 match against France.
- Haris Seferovic has been directly involved in 10 goals in his last eight home appearances for Switzerland (8 goals, 2 assists).
- Republic of Ireland midfielder Glenn Whelan earned his 91st cap tonight against Switzerland, moving level with Niall Quinn. Indeed, only seven other players have appeared more often for the Boys in Green.
Spain needed an injury-time goal from Rodrigo to book their place at Euro 2020 with two matches to spare.
They fell behind to Sweden four minutes into the second half after Spain goalkeeper David De Gea made a double save to deny Berg and Emil Forsberg, only for the ball to loop up in the air for Berg to nod into an empty net.
Moments later De Gea had to pull off a sharp save down to his right to prevent Forsberg from doubling the lead.
But Spain’s problems deepened when De Gea, who had made a stunning save to deny Robin Quaison in the first half, limped off with what appeared to be a hamstring injury.
They looked on course for a first defeat of the campaign until substitute Rodrigo fired through a crowded penalty area at the death to clinch a 1-1 draw.
Sweden were left grateful to Alexander Sorloth, who scored a late equaliser for Norway in Romania.
The 1-1 draw means Romania stay a point behind the Swedes in third, while the Faroe Islands beat fellow Group F also-rans Malta 1-0.
Italy, already assured of qualification, took the lead in after just two minutes in Liechtenstein through Federico Bernardeschi.
But they had to wait until the 70th minute to find the net again through Andrea Belotti’s header before Alessio Romagnoli, Stephan El Shaarawy and Belotti again wrapped up a 5-0 win.
A late own-goal by Adnan Kovacevic dented Bosnia and Herzegovina’s chances of catching Finland as they went down 2-1 in Greece.
In Group G Israel beat whipping boys Latvia 3-1.
Norwich striker Teemu Pukki scored twice in a comfortable 3-0 victory over Armenia.
Pukki struck twice in the second half after Fredrik Jensen opened the scoring for the hosts, who are second behind Italy in Group J.