Austrian fifth seed Dominic Thiem saved match point in a gripping Monte Carlo Masters second-round win over Russian youngster Andrey Rublev on Tuesday, while Grigor Dimitrov and Alexander Zverev both came back from a set down to reach round three.
A two-time French Open semi-finalist, Thiem recovered from a set down to book a last-16 clash against either Novak Djokovic or Borna Coric with a 5-7, 7-5, 7-5 victory.
Thiem is playing in his first tournament since suffering an ankle injury at Indian Wells last month.
Rublev spurned a chance to seal the match when he fired a forehand narrowly wide on his own serve late in the deciding set.
"I had to fight from the first to the last point, which of course I did well. But I was also lucky at the end when he had a match point and missed a forehand by 10 centimetres or so," said 24-year-old Thiem.
"I was 10 centimetres from being out of the tournament."
The 24-year-old Thiem could also have to face defending champion Rafael Nadal in the quarter-finals if he can get past Djokovic or the in-form Coric on Thursday.
"It's a horrible draw for sure, from the first round on," conceded Thiem.
"But I'm happy that I played two hours and forty (minutes)... But I'm looking forward to watching Djokovic and Coric in front of the TV and then playing the winner on Thursday."
Fourth seed Dimitrov came from a set down to see off French qualifier Pierre-Hugues Herbert 3-6, 6-2, 6-4.
Herbert started quickly, breaking in game three as Dimitrov struggled.
The world number five has often found life difficult on clay, having never reached the second week of the French Open.
And Herbert, the world number 82, wrapped up the opening set with another break as Dimitrov mishit a forehand into the stands.
But Dimitrov stepped up his game midway through the second set, reeling off five consecutive games to level the match.
The 26-year-old, who won the Cincinnati Masters and the ATP Tour Finals last season, threw away an early break in the third set, but quickly refocused to finish off the spirited Herbert.
"I was just a little bit rusty, I haven't played a match in about three weeks," said Dimitrov.
"All I (could) do was just fight and find a way to win, how doesn't really matter."
Third seed Alexander Zverev also fell behind to Luxemburger Gilles Muller, before coming through 4-6, 6-3, 6-2.
The 20-year-old German, who is bidding for his third Masters title, broke to lead 4-3 in the opening set, but let his level slip as Muller forged ahead.
But Zverev, the world number four, bookended the second set with breaks of serve and easily ended the unseeded Muller's challenge in fading light to progress to a last-16 match against either Fabio Fognini or Jan-Lennard Struff.
"It wasn't easy, but I found my rhythm in the second and third sets," he said.
Earlier, French number one Lucas Pouille blew a one-set lead to be dumped out by Zverev's older brother Mischa in a third-set tie-break.
Seventh seed Pouille, a semi-finalist last year, eased through the first set but Zverev hit back to claim a 2-6, 6-1, 7-6 (7/3) victory and reach the third round for the first time in his career.
The world number 55 trailed 4-2 in the decider, but broke back immediately before clinching the tie-break when a Pouille return dropped into the base of the net.
Elsewhere, David Goffin edged out Greek Stefanos Tsitsipas 7-6 (7/4), 7-5 to reach the last 16 for the third year in a row.
The Belgian sixth seed, who lost to Nadal in last year's semi-finals, sealed victory on his fourth match point.
Fernando Verdasco saved three match points to beat Uruguayan Pablo Cuevas in a first-round match, while Briton Kyle Edmund lost in three sets to Andreas Seppi, less than 48 hours after a final defeat in Marrakech by Pablo Andujar.