Holder Novak Djokovic took advantage of Roger Federer's slump after a rain break to reach the Rome Masters final with a 4-6 6-3 6-3 win.
Second seed Federer, yet to win a title this year, looked to be cruising when leading 6-4 2-1 before rain stopped play for about an hour.
The Swiss had started better and broke in the ninth game with his sixth break point when Djokovic, whose concentration had been disturbed by a spectator whistling just as he was about to take his second serve, hit a forehand long.
Federer held to claim the first set before breaking the 21-year-old Serb again at the start of the second. He had chances to go 3-0 and 4-1 up either side of the rain break before wild shots helped Djokovic force a third set. Djokovic then romped back from a break down in the decider to set up a meeting with world number one Rafael Nadal or Chilean 12th seed Fernando Gonzalez.