David Goffin proved too hot to handle for Novak Djokovic as the Belgian 10th seed reached the Monte Carlo semi-finals with a thrilling 6-2 3-6 7-5 victory on Friday.
Former world number one Djokovic saved four match points but cracked under his opponent's tremendous pressure on the fifth as Goffin set up a last-four meeting with either claycourt king Rafa Nadal or Argentine Diego Schwartzman.
Earlier, Spanish claycourt specialist Albert Ramos followed up his victory over world number one Andy Murray with a 6-2 6-7 (5) 6-2 defeat of Croatian fifth seed Marin Cilic.
France's Lucas Pouille made a fast start before being made to work harder by Uruguay's Pablo Cuevas, eventually winning 6-0 3-6 7-5.
In the first European claycourt tournament of the season, Serbian second seed Djokovic was overwhelmed in a one-sided opening set before playing more patiently in the second, but Goffin put on a gritty display in the decider.
Djokovic was serving at 4-3 but Goffin won the game to love to roar back into contention, taking every opportunity to unsettle the French Open champion.
In the 12th game, Goffin opened a 40-15 lead on Djokovic's serve but the 12-times grand slam champion saved four match points before netting a forehand to lose to the Belgian for the first time in six meetings.