Federer beat Casper Ruud 6-3, 6-1, 7-6 (8) in his third round matchup. It was his 400th Grand Slam match. Federer has now reached the round of 16 at the French Open 14 times.
"I enjoyed the match," Federer told reporters. "I thought it was tough, even though I had a good run there for a while. It is always very important to me to know I can run through a set and a half and just take care of business."
"It gives me confidence for the next match."
Federer, 37, is making his first Roland-Garros appearance since 2015.
The 20-year-old Ruud won the first game and held a 2-1 and 3-2 advantage in the first set before Federer bounced back to take control. Federer won the first five games of the second set in dominating fashion.
Ruud claimed the first two games of the final set before Federer rallied to tie it up five times, forcing a tiebreaker. He outlasted his much younger counterpart down the stretch to claim a straight sets victory.
Kei Nishikori needed five sets to oust Lasio Dere in his third round matchup on Friday. Benoit Paire also advanced at Roland-Garros, beating Pablo Carreno Busta.
Federer battles Nicolas Mahut or Leonardo Mayer in the round of 16 on Sunday in Paris. Nishikori faces Paire on Sunday in the round of 16.