World number four Muguruza produced a classy display on Court Philippe Chatrier to prevail 7-5 6-4 and ensure Williams - the runner-up to Angelique Kerber at this year's Australian Open - was again denied the chance to tie Steffi Graf's Open Era record of 22 slam singles crowns.
After being presented with the Coupe Suzanne Lenglen, Muguruza, 22, said: "I can't explain with words what his day means to me. You work all your life to get here.
"I want to really congratulate Serena because she's one of the best players.
"Of course I want to say thank you to my team, my coach, everyone there [in the players' box], my family, for sure.
"I've grown up playing on clay, so for Spain and for me this is just amazing."
Muguruza was playing in her second grand slam final, having lost in straight sets to Williams at Wimbledon in 2015.