Juan Martin del Potro defeated top-ranked Novak Djokovic 4-6, 6-4, 6-4 in the semifinals of the BNP Paribas Open on Saturday, handing the Serb his first loss in 21 matches dating to last October.
Del Potro snapped his own four-match skid against Djokovic, who had beaten the Argentine in eight of 10 career meetings.
Del Potro's 133-mph ace closed out the nearly 3-hour match in 96-degree heat. Del Potro raised both arms in celebration.
At times, the unseasonable heat seemed to have worn down Del Potro, who draped a white towel packed with ice around his shoulders on changeovers, his chest heaving from several long rallies.
It was Djokovic's first loss since Oct. 31, when American Sam Querrey beat him indoors at the Paris Masters. The Serb had won 17 consecutive matches and two titles, including the Australian Open, to start the year.
Del Potro, the second Argentine to reach the final here, will play Rafael Nadal for the title on Sunday.
No. 2 seed Maria Sharapova and No. 8 Caroline Wozniacki will play in the women's final.
Nadal rallied to beat Tomas Berdych 6-4, 7-5 and reach his fourth ATP Tour final in as many events.
Off to the best start of his career, Nadal improved to 16-1 - including 13 wins in a row - on the year, having won two clay-court titles and been runner-up in another since returning from a left knee injury that idled him for seven months.
"It's very, very difficult to imagine something like this. But here we are today, and very happy about all what happened the last month, especially last three weeks,'' said Nadal, who beat No. 2 Roger Federer in straight sets in the quarterfinals.
"I don't have nothing to lose after seven months. I did much more than what I dreamed.''
It was Nadal's 12th straight win over Berdych, including seven consecutive on hard courts.
"He looks strong again,'' Berdych said of Nadal, whose leg is taped just below his left knee. "He still play very aggressive, and what he was missing in his first matches when he come back after the injury was maybe a bit of confidence in his game, but definitely not today and not anymore.''
Berdych came in with 18 match wins - second-most on tour this year - and was trying to make the final of three tournaments in a row for the first time in his career.
Berdych got broken at 5-all in the second set when he lost an easy smash in the sun, sending it wide.
Trailing 6-5, the sixth-seeded Czech held three break points, but couldn't convert. Twice Nadal came up with big serves and then Berdych committed an unforced error.
Berdych's netted forehand set up Nadal's first match point, but the fifth-seeded Spaniard pulled a forehand wide for deuce. Berdych sent a backhand into the net for Nadal's second match point, and he closed out the nearly 2-hour match in unseasonably hot temperatures when Berdych netted another backhand.
"I was very nervous at the end of the match to close the match and was lucky that my serve worked amazing in the last game in important moments,'' he said. "Victories like today, like the other day, helps you a lot for the confidence and to remember all the things that you have to do in every moment.''
Nadal had 16 winners and 25 unforced errors but he saved 3 of 4 break points, getting broken in the eighth game on a double fault to give Berdych a 5-3 lead. Nadal then won the final three games of the match.
"When it was 5-3 since that time I serve only one first serve and he serve only one second serve,'' Berdych said. "Actually, that was the difference.''