Romanian Halep, playing in her first grand slam final, gave everything she had and played her full part in a terrific final but after three hours and two minutes it was Sharapova who won it 6-4 6-7 (5/7) 6-4.
Loading article content
It has been quite some transformation for a player who used to find clay an alien surface.
Sharapova, who also lost last year's final to Serena Williams, took her tally of grand slam titles to five, winning more than once at the same major for the first time.
She struck first in the French Open final by winning the opening set against Simona Halep.
Sharapova had lost the first set in her previous three matches but was much sharper this time and took it 6-4.
It was the first set Halep, playing in her first grand slam final, had lost all tournament.
Halep was looking to become only the second Romanian woman to win a grand slam singles title after Virginia Ruzici, who is her manager, in Paris in 1978.
The 22-year-old has gone from losing in the first round here 12 months ago and having never won a title to winning seven of them, reaching her first grand slam final, and on Monday she will be ranked third in the world.
There was a huge difference in experience across the net, with Sharapova a four-time grand slam champion and through to her third successive French Open final.
There was also a huge difference in height, Sharapova the taller by eight inches - but it was Halep who began much the better.
Sharapova played a nervous first service game and Halep struck, the first-timer looking the looser and guiding her shots expertly into the corners.
Halep, the higher seed but clearly not the favourite, has a lovely fluidity of movement and superb balance that enables her to comfortably trade with more powerful players.
But, her poor first game aside, Sharapova had really raised her level from her previous matches and was powering away a lot of winners.
Halep fought off three break points at 1-2 but not a fourth, and Sharapova then forged ahead for the first time, just finding the line with a forehand to deny her opponent another break.
The Russian was really getting into her stride and broke serve again in the next game before making it five games in a row. But trying to serve out the set the errors returned and Halep broke back for 4-5.
That still left the Romanian having to hold serve, though, and, with a crying baby perhaps distracting her, she missed a forehand as Sharapova converted her second set point.
The pair had met in the Madrid final last month, Halep winning the first set easily but then losing the next two.
Sharapova's record in three-set matches on clay is remarkable - she had not lost one for four years - so the task facing Halep was Herculean.
The Russian was taking a huge amount of time between serves, and also making Halep wait, but umpire Kader Nouni did not give her a time violation.
The match was certainly being played on Sharapova's terms and Halep, the junior champion here in 2008, looked in serious trouble when a missed backhand gave her opponent a break for 2-0 in the second set.
But just when it seemed Sharapova had taken a stranglehold on the match, she let it go, playing a poor game to help Halep level at 2-2.
There were lots of Romanian flags in evidence and there was no doubt who the majority of the crowd wanted to win.
Double faults have been Sharapova's big Achilles heel since her shoulder surgery and she served three in the fifth game but held on.
The Russian then had two chances to lead 5-3 but Halep showed terrific courage to hit winners on both.
And the fourth seed used the momentum from that to break the Sharapova serve, winning a remarkable rally that had both women exploring the full expanses of Court Philippe Chatrier before her opponent missed a backhand.
That left Halep serving for the set but the luck was against her as, having missed one break point, Sharapova's backhand hit the top of the net and dribbled over.
The Romanian responded by breaking again, but the outcome the second time serving for it was the same as the first and they went into a tie-break.
Sharapova was two points away from the title at 5-3 but made errors on the next four points and it was Halep who took it 7-5 to level the match.
It was the first women's final to go the distance since Jennifer Capriati beat Kim Clijsters 12-10 in the third in 2001.
Sharapova took a long bathroom break between sets and began the decider by breaking the Halep serve, but back came the Romanian with a sixth successive break.
In the second game of the set Sharapova was given a time violation by umpire Kader Nouni, who had been overly lenient on the Russian's slow play.
Halep looked the fresher and she had two chances to break for 3-1 but missed a backhand on the first and Sharapova won the second with a forehand.
The Russian's fist pumps were becoming ever more dramatic, and the most prolonged of the lot came when, having saved two break points, Halep netted a backhand to give Sharapova a 3-2 lead.
But Halep refused to go away and Sharapova's 12th double fault of the match made it 4-4.
Just when it seemed it might be slipping away, though, the Russian played a stunning game to break again and leave herself serving for the match.
And this time there were no more twists, Sharapova winning the final eight points of the match and collapsing to the clay in delight.