Seven-time Italian Open winner Rafael Nadal lost 7-6(7), 6-2 to Stanislas Wawrinka on Friday meaning there will be an all-Swiss semi-final after Roger Federer crushed Thomas Berdych 6-3, 6-3.
Top seed Novak Djokovic dropped a set for the third successive match before reaching the last four with a 6-3, 3-6, 6-1 win over Japanese fifth seed Kei Nishikori.
Nadal, the No 4 seed, twice earned breaks in a tight first set that lasted 76 minutes but slipped through his fingers in a 16-point tiebreak in which he held a 6-2 advantage.
His trademark forehand again let him down at crucial moments and, as doubts crept in, eighth-seeded Wawrinka took control by winning five of the six second set games that went to deuce.
Wawrinka and Federer meet for the first time since their ATP World Tour semi-final in which the 17-time Grand Slam champion saved four match points before winning in a third set tiebreak.
Second seed Federer fell behind early against Berdych only for the Czech to double fault and give a break away in the sixth game. Federer handled the windy conditions better and was almost untouchable on first serve, winning 86 percent of the points.
"Thomas can play much better than this," Federer told Sky Sports Italia after stepping closer to winning one of the two Masters 1000 tournaments he has never claimed.
Defending champion Djokovic battled past Nishikori but said he had let his game and concentration slip in the second set.
"I became passive in the second set so it was important to get off to a good start in the third," Djokovic said.
The World No 1, who had also dropped a set in his previous rounds against Nicolas Almagro and Thomaz Bellucci, earned the decisive break in the fourth game of the final set to advance to a last-four meeting with Spaniard David Ferrer.
"I'm not playing my best but what's important is to find a way to win and I did that," he said.
Seventh seed Ferrer outlasted David Goffin, the only unseeded player to reach the last eight, 6-2, 4-6, 6-3.
Ferrer scampered around from the start to jump into a 3-0 lead before breaking the Belgian for a second time to close out the set. Goffin snatched the following set but Ferrer regrouped to dominate the end of the match and claim the victory.
In the women's event, twice champion Maria Sharapova overpowered Belarusian Victoria Azarenka 6-3, 6-2 and will try to avenge her Miami loss to Daria Gavrilova on Saturday.
"I'm really looking forward to playing her again because there were so many things I could have done better last time," Sharapova told SuperTennis TV.
The 21-year-old Russian Gavrilova is in the last four of a WTA event for the first time after defeating American Christina McHale.
Simona Halep crushed Romanian compatriot Alexandra Dulgheru 6-1, 6-0 in 56 minutes.
The second seed has been unstoppable in Rome, losing only seven games in three matches, and next faces Spaniard Carla Suarez Navarro who defeated Madrid winner Petra Kvitova 6-3, 6-2.