Albert Ramos-Vinolas won the last four games of the match to beat fifth-seeded Marin Cilic of Croatia in three sets to reach the Monte Carlo Masters semi-finals.
Cilic, the 2014 U.S. Open champion, seemed to be in command when he broke at the start of the third set but 15th-seed Ramos-Vinolas rallied to claim a 6-2 6-7 (7-5) 6-2 quarter-final victory.
Spaniard Ramos-Vinolas needed two-and-a-half hours to complete the victory, after blowing a 5-3 lead in the second-set tiebreaker, with Cilic serving a double fault on match point.
Ramos-Vinolas will play French No.11 seed Lucas Pouille or No.16 seed Pablo Cuevas of Uruguay.
In the other half of the draw, world No.2 Novak Djokovic will play world No.13 David Goffin of Belgium while defending champion Rafael Nadal will face unseeded Argentine Diego Schwartzman.