Twelve years younger than the American at 22, and playing in the first claycourt final of her career, the Venezuelan-born Spaniard upset the odds to win 7-5, 6-4.
She is the first Spanish woman to win a Grand Slam title since Arantxa Sanchez-Vicario in Paris in 1998 and she is the third straight first time Grand Slam winner after Flavia Pennetta at last year's US Open and Angelique Kerber at the Australian Open.
Tennis Australia to beef up integrity unit
"I am so excited to play the final of a Grand Slam against one of the best ever players. It's the perfect final and I am so happy," she said.
"Serena is a very powerful player and I just tried to fight as hard as I can."
For Williams it was a second straight loss in a Grand Slam final and it wrecked her hopes once again of winning a 22nd Grand Slam title to draw level with Steffi Graf for most wins in the Open era, since 1968.
She will now turn her focus on Wimbledon where she will be the defending champion and a six-time former winner.
The players took contrasting routes to get to the final.
Fourth seed Muguruza breezed through, losing just the one set, in her opening match, while Williams struggled past the quarter- and semi-finals amid talk of an injury or illness.
French Open: It rained $100 million for Djokovic
But with weather conditions improving after one of the rainiest Roland Garros tournaments on record, it was a different, more focussed Williams that got the final underway with a love service game.
Muguruza replied in kind as two of the biggest and best servers in the women's game went head to head.
The 22-year-old Spaniard had to battle hard to level at 2-2, saving two break points along the way, but she then grabbed the first break of the final thanks to a loose game from the American culminating in a double fault.
Muguruza, who lost to Williams in the Wimbledon final last year, moved 4-2 ahead, but she lost her range two games later to allow the American to level the score.
The tall Spaniard was matching Williams for power and when the title-holder opened the 11th game with a double fault she seized the opportunity to apply some added pressure on her opponent.
Her tactics paid off with Williams failing to cope with a series of explosive baseline groundstrokes.
Muguruza's second break of the final allowed her to serve for the set and she duly managed that staving off two break-back points along the way.
A top quality first set had taken 56 minutes with Muguruza winning 41 points to 40 for Williams underlining the closeness of the contest.
Muguruza maintained her level of play and composure to start the second set with a third break of serve, but she then struggled on her own serve, coughing up a seventh double fault to hand back the advantage.
Williams though was struggling and this time it was the quality of her opponent's play rather than her own misgivings that were responsible for her struggles.
Muguruza made it three straight breaks of serve in the next game and moved out into a 3-1 lead.
Williams dug deep to get back to 3-2 sparking a scream of defiance from a player who had been in 26 Grand Slam finals dating back to 1999 and lost just five of them.
But Muguruza was solid on her serve despite the occasional double fault and the Spaniard went 4-2 and then 5-3 up.
Williams saved four match points in the next game to stay alive, but Muguruza stayed calm to serve out for the biggest win of her fledgling career.
COMMENTS (2)
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ