The two-time Monte Carlo champion had not played since losing to Daniil Medvedev in the semifinals of the Dubai Championships five weeks ago, which ended the Australian Open champion’s 20-match winning streak.
The 35-year-old Djokovic, who suffered an opening-round exit last year in the Principality, struggled with consistency in the first set and took time to find his marks on the slow surface. He played more aggressively in the second set and broke for 3-2, then did not look back to reach the third round.
“I have not played my best, particularly in the first set,” said Djokovic, who saved three of the four break points he faced. “All in all, I’m just pleased with the way I held my nerves in important moments.”
The 13th-seeded German was playing on clay for the first time since a right ankle injury forced him to retire in the French Open semifinals against Rafael Nadal last year.
Zverev said he needed to “get the injury out of my head” and get used to sliding again.
“It felt awful at times to be honest, but he made me feel awful,” Zverev said. “Tactically he played well, he didn’t let me play my game at all. He didn’t let me have my rhythm and he almost won the match, just a few points here and there.”
Still, Zverev limited his unforced errors to nine and hit 21 winners on Court Rainier III to set up a match against Spaniard Roberto Bautista Agut in the next round.
Two-time semifinalist Grigor Dimitrov also advanced by beating American Ben Shelton 6-1, 3-6, 6-3. The 20-year-old Shelton made his debut at Monte Carlo and did not disappoint, testing Dimitrov in a tense contest that lasted more than two hours.
“It is one of those matches that I just needed to go through,” Dimitrov said. “I played a lot of good tennis. There were a lot of positives to take out of that.”
Dimitrov will next play Jiri Lehecka of Czech Republic.