The former French Open and Wimbledon champion has produced some of the best tennis on the WTA Tour this year, but had gone without a trophy to back that up.
However, she put that right with a 7-6 (8-6) 6-3 victory over surprise finalist Barbora Krejcikova, a doubles specialist who has never ranked inside the top 50 in singles.
Coach Conchita Martinez has been absent from Muguruza's recent matches after testing positive for COVID-19, keeping tabs with mobile phone footage from court side.
"She got the virus and was so upset she couldn't come, so this one is for her," Muguruza said.
Muguruza's most recent title had come at the 2019 Monterrey Open, where she successfully defended her title.
She was runner-up at the Australian Open in 2020 and in the early stages of this season made it through to finals at the Yarra Valley Classic and the Qatar Open.
She was beaten by Ash Barty in the first of those, in February, and by Petra Kvitova in Doha last weekend, but Muguruza made sure she did not spurn her latest chance to lift a trophy.
Krejcikova had bizarrely taken a medical break before the match began, seeking treatment on a thumb injury, but that did not prevent her being competitive.
The gruelling first set contained two breaks of serve for each player, and the second was also tightly contested before Muguruza took the title on her second championship point when her opponent went long with a forehand.
Muguruza said: "It's a great achievement. I've been coming here for many years and felt I was close but not enough.
"Finally today I got the champion's trophy and I'm very happy after losing a few finals in a row to get this one.
"I feel the consistency is hard to get, but being able to play three finals is a great sign that we are on the right way."