Second seed Roger Federer will meet six-time winner Rafael Nadal in the final of the Rome Masters after a hard-fought 7-6 (7/5), 6-4 semi-final win over Frenchman Benoit Paire.
Sunday's final will be the 30th meeting between Nadal and Federer with the Spaniard holding a 19-10 lead.
Paire has been one of the sensations of the tournament and pushed his Swiss rival to a first set tiebreak.
However, Federer raised his game in an equally tight second set to set up a Sunday final with Nadal after the Spaniard accounted for Czech Tomas Berdych in straight sets.
Paire had lost both of his previous encounters against the world number three -- the first in the Basel quarter-finals last year and the second in this year's Australian Open -- in straight sets.
However the unseeded Frenchman came into the semi-final on the back of a one-sided quarter-final win over Marcel Granollers having accounted for Juan Martin Del Potro in the third round.
Paire started strongly, showing no sign of nerves in the opening game where he created two break points only to net one and send the other past the baseline.
Federer held serve, but the Frenchman went on to keep the Swiss on his toes until the sixth game when some wayward serves threatened to offer Federer the break until Paire steadied the ship.
Unperturbed, Paire broke Federer's serve in the next game -- the seventh -- but failed to capitalise as Federer pounced on the second of two chances to break back after smashing home a Paire lob.
The pair traded blows until the tiebreak, when Paire took a 3-1 lead only for unforced errors from the Frenchman, and some massive groundstrokes from Federer, to give the Swiss the set.
Paire started the second set as he did the first, but back-to-back double faults in the third game gave Federer a crucial break.
The Frenchman pressed Federer throughout the remainder and despite recovering from a double fault at the start of the ninth game to close to 5-4, Federer made the most of three match points at the start of the 10th to seal the win.