(CNN) -- Defending champion Novak Djokovic will play world number one Rafael Nadal in the final of the Rome Masters after contrasting semifinal victories on Sunday.
Djokovic wants to be the center of attention after his fine win over Federer.
Djokovic edged past world number two Roger Federer 4-6 6-3 6-3 while Nadal brushed aside 12th seed Fernando Gonzalez 6-3 6-3 at the Foro Italico.
Serbian ace Djokovic needs to beat Nadal on Sunday to retain his world number three spot ahead of Andy Murray. He knows it will be a tough task.
"There's not much to say about Rafa on clay," Djokovic told Sky Sports.
"He is the absolute favorite to win.
"I won a set against him in Monte Carlo and learned that I have to play every point against him tomorrow and wait to get chances."
Djokovic had to come from a set down to beat world number two Federer who has now gone seven months without a tournament win, admittedly the U.S. Open at Flushing Meadows where he beat Murray in the final.
The Swiss won the opening set and looked as if he might cruise to an easy victory when he opened up a 2-0 lead in the second but Djokovic was fortunate the rain intervened.
When play resumed, Federer proceeded to lose five straight games as his opponent tied it up a one set all.
The decider followed a similar pattern with Federer taking a 3-1 lead before Djokovic taking five games in a row again to wrap up victory after two hours 10 minutes.
"At the end it's always disappointing when I exit a tournament," said Federer.
"I got used to winning tournaments and this leaves a bitter taste."
Nadal wasted little time in extending his clay court winning run to 29 matches with his last defeat against Juan Carlos Ferrero in Rome as he was suffering from blisters.
Spain's Nadal broke his Chilean opponent four times, never looking back after edging ahead 4-3 in the first set as both men exchanged breaks.