World number one Roger Federer was stunned by unseeded American Mardy Fish after Rafael Nadal's Pacific Life Open title defence came to an abrupt halt in Saturday's semifinals.
Federer lost to an American player for the first time in 42 matches when he was crushed 6-3, 6-2 by Fish in a match lasting just over an hour at Indian Wells Tennis Garden.
Fish, who had never beaten Federer in five previous meetings, outplayed the Swiss on a sun-drenched afternoon to book a place in the final against third-seeded Serb Novak Djokovic.
Australian Open champion Djokovic swept aside second-seeded Spaniard Nadal 6-3, 6-2 in an earlier match.
"It feels pretty good," Fish, 26, said in a courtside interview after an aggressive display featuring 28 winners and seven aces. "I couldn't have dreamed up a better scenario than that.
"This wasn't obviously Roger's best day, but hopefully I had a little something to do with that. I tried to beat Roger with pace today, up the line and crosscourt. It seems to be working."
Setting the tone
Ranked 98th in the world, Fish set the tone for the biggest win of his career by breaking Federer in the second game before sweeping through the opening set in 34 minutes.
With Federer strangely out-of-sorts and Fish in prime form, the American again broke in the first and fifth games of the second before serving out to secure victory in the eighth.
"I have a great record against him and I have always controlled matches against him," Federer, 26, said. "Today was different, a tough result. He came up playing very, very well.
"He took everything on the rise and hit winners. I just couldn't get to his second serve and that was the disappointing part of today.”
Earlier, Djokovic, 20, broke Nadal twice in each set to secure victory in one hour 28 minutes. In a repeat of last year's final, left-hander Nadal broke in the third game of the opening set when Djokovic hit a forehand long but the Serb broke back to level at 2-2.
Djokovic also broke in the eighth game with a favourable net cord bounce to lead 5-3 before holding serve to wrap up the first set in 41 minutes.