The top-ranked Spaniard needed only 75 minutes to get past the ninth-ranked Frenchman, who was broken four times.
"The truth is it was a pretty complete game," said Nadal, who is bidding for his sixth win at the clay-court tournament where he has a 29-1 record. "I'm very happy since this is a matchup between two of the best players in the world and to win 6-2, 6-2 makes me very happy."
Nadal rallied from 40-0 down in the third game to convert his first break point with a forehand winner, with Monfils pushed deep behind the baseline.
Nadal extended his lead to 4-1 when Monfils netted a backhand to be broken again, and Nadal held serve to take the first set.
The second set was a near replica of the first as Nadal broke Monfils in the third and fifth games again.
Monfils hit wide to trail 2-1 and sent a forehand long after a net exchange to be broken for the fourth time. Nadal held serve to close out the match and set up a match with either fellow Spaniard Feliciano Lopez or Ivan Dodig of Croatia.
"This is super positive," said Nadal, the recent Monte Carlos Masters champion who improved to 30-0 on clay since 2010. "But there's still much to achieve."
Ferrer reached his fifth semifinal of the season. He lost to Nadal in the Monte Carlo Masters final last weekend.
In the first set, Melzer slammed his racket into the red dirt after netting to set up set point for Ferrer. He converted when the Austrian went long.
Melzer's frustration carried over into the second set when he was broken in the first game, slapping a backhand wide. But Melzer -- who beat Roger Federer in Monte Carlo -- broke back to tie at 1-1.
Ferrer needed treatment on his left calf but shrugged off the twinge after breaking for 4-3. The sixth-ranked Ferrer took the next two games, including match point when Melzer hit long.