The second-ranked Spaniard won 7-5, 7-5 Sunday, and improved his clay-court record over Federer to 7-1.
"Winning four times here is unimaginable," said Nadal, who earned his 24th career title. "Roger played a great match. We always have good finals."
Nadal has won 98 of his last 99 matches on clay, with a loss to Federer in the 2007 Hamburg final the only blip.
The Swiss star blew commanding leads in each set, breaking Nadal to lead 4-3 in the first and racing to a 4-0 lead in the second.
"Disappointing second set," Federer said. "After playing the right way against him and then letting him back into the match, it was disappointing. Maybe I didn't play my best."
Federer committed too many unforced errors, surprisingly on his forehand, and let Nadal back into the match.
"He deserves to win," Federer said. "I'm pushing Rafa today, having the feeling I can beat him if I play the right way. And I think that's the feeling I didn't have after [Monte Carlo] last year."
Nadal is the only player in the Open era to win four straight titles at Monte Carlo, and the first since Anthony Wilding of New Zealand (1911-14).
Nadal has won 22 consecutive matches at Monte Carlo since losing to Guillermo Coria in the third round in 2003. Federer was the last person to take a set from him in the 2006 final. Nadal missed 2004 with injury.
The three-time French Open champion is 19-1 in clay-court finals, while Federer dropped to 7-8 on his least favorite surface. The 12-time Grand Slam champion has never won the French Open, the only major title missing from his resume.
Still, Nadal thinks Federer remains the best, despite a slower start to the season. Federer picked up his first title of the season last week at the Estoril Open.
"I think he doesn't get enough credit," Nadal said. "It is impossible to be at 100 percent all your career, he is still No. 1, the best in the world."
Relying too much on his forehand, Federer also missed routine volleys at the net, and made 44 unforced errors.
Federer seemed poised to even the match after hitting some near-perfect winners down the line and taking a 4-0 lead in the second set. Nadal struggled to hold his serve in the fifth game, but turned the match around.
Nadal rallied to 4-3, and Federer had four consecutive errors in the eighth game to lose his serve at love.
A weak backhand gave Nadal the match point and he took it at the first opportunity, before sliding on his back and raising both fists in the air.
Federer lost his serve six times during the match.
"The amount of times I got broken today wasn't what I was hoping for," Federer said. "But at least I was finally able to break him also on [four] occasions, which is the good part."
Federer won only 29 percent of his second-serve points, which even alarmed Nadal.
"A little bit strange because that's not normal, no?," Nadal said. "He's a big server."
Both players looked nervous on serve in the first set, swapping breaks for 1-1.
Federer saved a break point in the sixth game and dominated Nadal at the net in the seventh, breaking him to move ahead 4-3.
Nadal enjoyed some luck to break back to 4-4.
A loose return bounced on the baseline and surprised Federer, who returned it into the net. Then, on break point, Nadal's powerful forehand clipped the net and sent Federer the wrong way.
In the 12th game, Federer drew Nadal into the net but hesitated before trying a slice backhand that Nadal easily read and flicked back to take the opening set.
Federer started out strongly in the second set with crisp volleys and confusing angles. He broke Nadal at love in the third game, then easily held for 4-0 before Nadal rallied.