World number one Rafael Nadal won 6-4 2-6 6-1 against Andy Murray in just short of three hours to set up a final against compatriot David Ferrer, who earlier defeated Austria’s Jurgen Melzer 6-3 6-2.
Murray suffered his 10th defeat in 14 matches against Nadal in the semi-finals.
The Briton can take plenty of encouragement from a high-quality display in the second semi-final, especially as his participation was in doubt because of an elbow injury.
The Spaniard Nadal has now extended his unbeaten record in Monte Carlo to 36 matches, stretching back to 2003, and he has not lost anywhere on clay since 2009.