David Goffin caused a semi-final upset at the ATP Finals on Saturday as he added the scalp of Roger Federer to that of Rafael Nadal.
Goffin did not look like repeating his win over Nadal early on at the O2 Arena but the Belgian surged back from a set down to triumph 2-6 6-3 6-4 and claim his first ever victory over world number two Federer.
Federer raced through the first set in just 33 minutes and, given his 6-0 record against Goffin, looked strong favourite to progress.
However, it was not to be as – for the second day running – Goffin mounted a sensational comeback to set up a meeting with either Grigor Dimitrov or Jack Sock, while extending Federer's wait for a seventh title at the end-of-season event.
Five times Federer fashioned a break chance in the opening game and, although Goffin battled hard to save four, there was nothing he could do with the final one as the Swiss moved ahead – the seventh seed sending a backhand well beyond the baseline.
The Wimbledon champion gained a double break in the fifth game thanks to two sublime backhands down the line, Federer's groundstrokes working like clockwork as he raced into a 4-1 lead.
He wasted his first set point as Goffin – playing with strapping on his left knee – battled bravely, but in Federer's fourth service game the 1-0 lead was secured, the 36-year-old comfortably holding to love.
Amazingly the anticipated march into Sunday's final failed to materialise, though, as Goffin dug deep to level the match in style.
He raced into a 3-0 lead by breaking Federer in the second game, only the third time he has lost his serve during the tournament in London.
Federer did apply pressure on his opponent but all too often his previously perfect groundstrokes found the net, Goffin targeting the Swiss' forehand and enjoying some success.
Anyone who made Federer favourite in the decider was soon beginning to rue their decision as Goffin again upped his game, and his illustrious rival struggled to stay with him.
Game three proved pivotal as Goffin – who will lead Belgium at next weekend's Davis Cup final against France – found himself with two break chances.
Federer saved the first but could not halt Goffin's momentum and he took a 3-1 lead.
He then only dropped one point on serve to round out a memorable victory that ensures a surprise victor in London.
Goffin  bt Federer  2-6 6-3 6-4
Goffin – 20/27
Federer – 28/37
Goffin – 7/1
Federer – 7/3
BREAK POINTS WON
Goffin – 2/3
Federer – 2/11
FIRST SERVE PERCENTAGE
Goffin – 59
Federer – 61
PERCENTAGE OF POINTS WON ON FIRST/SECOND SERVE
Goffin – 73/58
Federer – 74/57
Goffin – 87
Federer – 83
|Rockets star Paul dealing with hamstring injury|
|Does he only care about his hair? - Denmark coach Hareide slams Pogba, France|
|Rockets push Warriors to brink of elimination|
|World number 84 Kicker suspended for match-fixing|
|WATCH: Paul shimmies in Curry´s face|
|Copa Libertadores Review: Estudiantes into last 16 after thrilling win over Nacional|
|Ronaldo: Cristiano and Neymar would be good together at Madrid|
|Rockets honour Santa Fe victims, first responders at game five|
|Real Madrid rejected €150m offers for Asensio – agent|
|Marshall, Baldwin react strongly to Trump´s comments on NFL anthem stance|
|Nabura handed six-week ban for wild kick|
|Pedroia to return for Red Sox on Friday|
|Warriors´ Iguodala ruled out for game five against Rockets|
|Na leads as Spieth makes solid start at Colonial|
|James Harden, LeBron James headline 2017-18 All-NBA first team|
|Manchester United target Fred to decide future after World Cup|
|´Incredible´ Salah is like Messi, says Ronaldo|
|Salah a big candidate for Ballon d´Or - Muller|
|Message from coach keeping Masters champion Reed grounded|
|Anybody can really win it - Seles feels French Open is wide open this year|
|Mambo number 5! - Non-league star channels Lou Bega hit|
|Pakistan to stop wearing smart watches after ICC intervention - Hasan|
|Saha hails ´great man´ Ferguson as legendary Man Utd boss continues recovery|
|Emery´s depth of knowledge impressed Arsenal´s Gazidis|
|Conceicao extends Porto contract|
|Lomax impresses as Saints overrun Tigers|
|McIlroy in contention at Wentworth as Bjerregaard sets the early pace|
|Bad light calls time on Thiem, Wawrinka out in Geneva|
|Garitano in, Canales out at Real Sociedad|
|Caparros accepts new role at Sevilla|
|Pliskova downed by Larsson after drawing Serena in Paris|
|They´re using the anthem as fake patriotism - Warriors coach Kerr critical of NFL|
|Lyon win record fifth Women´s Champions League title|
|French Open 2018: Doing the unthinkable - the men most likely to topple Nadal|
|French Open 2018: How can Rafael Nadal be stopped?|
|Steve Smith named as marquee player for Global T20 Canada|
|Can Emre play? Yes he Can... and so can Milner|
|Liverpool working to help fans after flight cancellations|
|Abbas and Hasan torment sorry England|
|Xavi ´thrilled´ to sign two-year Al Sadd extension|
|Holtby extends Hamburg contract despite relegation|
|Nadal begins French Open defence against Dolgopolov|
|Serena drawn to play Pliskova in French Open first round|
|FA condemns assault of match official|
|Bologna confirm Donadoni departure|
|Yates lead halved in Giro d´Italia|
|Connacht turn to Friend|
|Scotland lose injured Dunbar for June tour|
|Spalletti in ´no rush´ to sign new Inter deal|
|Ricciardo and Red Bull dominate Monaco practice|
|Mauricio Pochettino signs new deal with Tottenham|
|Pochettino signs new deal with Tottenham|
|Istanbul to host 2020 Champions League final|
|Williams sisters given French Open wildcard|
|President Donald Trump praises NFL´s anthem stance|
|Buffon in consideration for Italy call, says Mancini|
|Roberts injured in Broncos win against Eels|
|Atletico complete move for Villarreal star Rodri|
|Ozil, Gundogan not playing politics, says Low|
|Valencia complete permanent Kondogbia signing|
|Fairytale ending could be in the script, says World Cup-bound Vardy|
|Milwaukee police apologise to Bucks´ Brown over tasering|
|Television, crosswords and Nintendo - Koscielny´s remedy to World Cup heartache|
|World Cup not an audition for Barca or Madrid, says Germany star Werner|
|Neck injury rules Kohli out of Surrey stint|
|Nine LaLiga titles and 674 club games under nine managers - Iniesta in Opta numbers|
|49ers Enterprises takes stake in Leeds United|
|Manchester United should sell Pogba if he´s unhappy - Scholes|
|Andres Iniesta´s nine LaLiga triumphs with Barcelona|
|Andres Iniesta: The footballers´ footballer|