Stefanos Tsitsipas kept his nerve in the key moments to beat six-time champion Roger Federer 6-3, 6-4 on Saturday and reach the final of the season-ending ATP Finals.
Tsitsipas saved 11 of 12 break points and took advantage of an error-filled performance from Federer, who continually put his opponent under pressure only to come up short when it mattered.
The Greek player will face Dominique Thiem, who beat defending champion Alexander Zverev 7-5, 6-3.
Tsitsipas, who is making his first appearance at the event, saved all six break points he faced in the first set. That included two at 5-3, when he needed seven set points before finally winning a marathon game.
He broke again for a 2-1 lead in the second, then saved three break points from 0-40 in the next game before Federer finally converted his fourth to level the set.
But the 21-year-old Tsitsipas broke again straight away with a forehand winner and then saved two more break points from 15-40 down when serving for the match at 5-4.
He didn’t give the 38-year-old Federer any more chances of a comeback, serving out the match with an ace.
"No doubt I had my chances," Federer said. "I'm just frustrated I couldn't play better. And when I did and fought my way back, I threw it away again."
The 17-year age gap between the two players was the largest in the history of the tournament.
For Federer, it was a surprisingly erratic performance after he played near-flawless tennis to beat Novak Djokovic in straight sets on Thursday to reach the semifinals.
He finished that match with five unforced errors _ including two double-faults _ but had 26 in this match.
In the first set, he only lost six points on his serve. By contrast, he won 18 points on Tsitsipas’ serve but couldn’t force a break.
Federer was especially unhappy with the service break in the first set, when he missed two fairly routine overheads to gift his opponent the early lead.
"Getting broken with missing two smashes in one game, that hasn't happened in a long, long time. Or ever," Federer said. "So that was tough."
Tsitsipas was coming off a three-set loss to Rafael Nadal in his last round-robin match on Friday but showed no sign of fatigue.
Reaching the final is another milestone in a breakthrough season after he also beat Federer on the way to the Australian Open semifinals.
He is now 2-2 against Federer after losing to him in the Dubai final and Basel semifinals this year.