Grigor Dimitrov came from a set down to beat Jack Sock 4-6 6-0 6-3 and reach the decider of the ATP Finals.
The Bulgarian, ranked three places above world number nine Sock, gave up a 3-1 lead to lose the first set to the American, who surprisingly won the Paris Masters during a resurgent end to 2017.
But, after edging in front during a tight third set, it is Dimitrov who will contest the final against David Goffin.
The Belgian shocked heavy favourite Roger Federer in Saturday's first semi-final at the O2 Arena.
Both Dimitrov and Goffin will now feature in the final match of the ATP Tour calendar in London for the first time in their careers.
Dimitrov took charge of proceedings early on, playing a brilliant point by coming in on Sock's backhand, pushing his opponent out of position and then volleying into open court to earn the first break.
Sock saved a break point before holding with an ace down the T to get to 3-1 and then broke back when Dimitrov netted a rally ball.
And the momentum then swung as Sock moved through the gears, holding with newfound ease and drawing a long forehand error to see Dimitrov broken again in the ninth game.
The American brought up two set points and took the first of them when Dimitrov dragged an attempted backhand return from a second serve into the net.
The resilience that allowed Sock to come from behind and win the first set was nowhere to be seen in the second.
Dimitrov held confidently and then broke when Sock mishit a rally ball. He sent another careless forehand long two games later to give up a double break.
Sock came to the net and threw in some sliced drop shots during a rushed final service game in the second set, but then netted successive rally balls to gift Dimitrov an unexpected bagel.
It soon became apparent that Dimitrov would not have the third set all his own way, though, as Sock composed himself and began to attack his opponent's awkward slice with heavier forehands.
And the set duly stayed on serve until the eighth game, when an unfortunate net cord for Sock was followed by two double faults in quick succession that offered Dimitrov two chances to break.
The Bulgarian took the second of them with an inch-perfect forehand down the line to serve for a place in the final, which he secured with his fourth match point.
Dimitrov  bt Sock  4-6 6-0 6-3
Dimitrov – 25/33
Sock – 20/37
Sock – 3/5
BREAK POINTS WON
Dimitrov - 5/8
FIRST SERVE PERCENTAGE
Dimitrov – 64
Sock – 62
PERCENTAGE OF POINTS WON ON FIRST/SECOND SERVE
Dimitrov – 68/52
Sock – 62/45
Dimitrov - 91
Sock – 77
|Braves´ Acuna Jr. has arrived as a true MLB star|
|LA Galaxy 2 Colorado Rapids 2: Jackson´s deflected strike sees spoils shared|
|Victory offer postponed retirement, says Honda|
|Kyrgios forgets tennis shoes, Federer back in business|
|Williams knocked out as Garcia and Pliskova advance in Ohio|
|Kvitova sees off Serena in Cincinnati classic|
|Federer dispatches Gojowczyk in Cincinnati|
|Stead succeeds Hesson as New Zealand coach|
|Duminy encouraged despite South Africa´s mixed results|
|Thiem withdraws from Cincinnati Masters|
|Edwards joins Ospreys in consultancy role|
|Former Arsenal and Barcelona player Song joins Sion|
|I´m very happy with what I have - Spalletti not desperate for Modric|
|Roethlisberger evaluated for concussion after practice|
|Brady ´absolutely´ expects to face Eagles|
|Rugby Championship 2018: Reasons for optimism and concern for Australia|
|Wentz ´gonna be close´ for Eagles opener|
|Cleveland ´victory fridges´ to unlock beer if Browns finally win|
|England´s Watson suffers injury setback|
|Mariners reinstate Cano after 80-game suspension|
|AEK Athens 2 Celtic 1 (3-2 agg): Rodgers´ men dumped out of Champions League|
|Alonso to leave F1: Paddock reacts to Spaniard´s exit|
|Roma sign midfielder N´Zonzi from Sevilla|
|Alonso to leave F1: Who will replace Fernando at McLaren?|
|Extraordinary Zidane is in Real Madrid´s past - Lopetegui|
|Alonso to leave F1: Then and now - how the grid, teams and calendar have changed since 2001|
|Wawrinka and Azarenka receive US Open wildcards|
|Parma sign Napoli pair Inglese and Grassi on loan|
|Sandakan castles Proteas before Sri Lanka squeeze home|
|Ronaldo sale won´t stop Real Madrid winning - Ramos|
|Predators sign Ryan Ellis to eight-year, $50M contract|
|Curran, Woakes, Rashid - who makes way for Stokes in England´s Test XI?|
|Griezmann well positioned for Ballon d´Or, says Simeone|
|Criscito: I was on Genoa bridge shortly before collapse|
|Alonso to leave F1: How the Spaniard´s numbers stack up to the greats|
|Rookie LB Roquan Smith finally signs Bears contract|
|De Villiers enjoying relief from ´unbearable´ Proteas pressure|
|Fernando Alonso to leave F1|
|Spalletti extends Inter contract|
|Godin, Koke, Griezmann and Juanfran named Atletico Madrid captains|
|Ronaldo out of hospital after illness|
|Fury: Beating Wilder and Joshua ´very easy´|
|Dickinson retires to take up academy coaching role|
|Cricket the ´sole focus´ for Stokes as he returns to England squad|
|Cheryshev moves to Valencia on loan|
|Mandzukic retires from Croatia duty after World Cup|
|Ben Stokes found not guilty of affray|
|Tottenham issue new stadium update and apology to fans|
|Chelsea flop Bakayoko moves to AC Milan on loan|
|Gabi urges Al Sadd team-mate Xavi to play on|
|Ronaldo leads UEFA Goal of the Season nominees|
|Federer: Djokovic could be caught up in US Open pressure|
|Ronaldo to Juventus a huge boost for Serie A – Matthaus|
|Werner would welcome Ozil Germany return|
|´Perfectionist´ Serena admits to ´unrealistic´ expectations in tennis and motherhood|
|Klopp praises Deschamps and his ´boring´ France|
|LaLiga 2018-19: Bale or Griezmann - Who will step into Ronaldo´s breach as Messi´s main rival?|
|Woods winning 15th major would be greatest comeback in sport – Faldo|
|Retiring Storm great Hoffman not giving up on Finals dream|
|Folau won´t change aerial approach in All Blacks showdown|
|Racism behind Sterling criticism, says ex-Arsenal star Wright|
|Eto´o joins Qatar SC following Ligue 1 links|
|UEFA Super Cup 2018-19: Atletico academy eclipsing Madrid, La Masia|
|UEFA Super Cup 2018-19: Should Real Madrid cash in on Modric?|
|Scintillating Serena sends warning, Azarenka survives opener|
|DeGrom strikes out 12, Mets hit 5 homers in win over Yankees|
|Djokovic needs nine MPs as Murray crashes out|
|Murray unsure of US Open readiness after Cincinnati exit|
|Van Dijk: Alisson making difference at Liverpool|
|Johnson saves eight MPs but Djokovic prevails|