The Monster Energy Kawasaki rider from Cortez, Colorado, was second in the first race, won the second and finished fourth in the third to take home $100,000.
Tomac nipped KTM rider Ryan Dungey by one point to take the overall win and a $100,000 prize. Dungey was second, finishing third, second and third in the three races.
Cameron Mcadoo of Sioux City, Iowa, won the Amateur All-Star Class on a Honda, winning the second race after finishing seventh in the opener.
Since the Monster Energy Cup debuted six years ago, no rider has won the cup twice. Only Ryan Villopoto, in the race’s first year, has won the $1 million prize for winning all three races.
Tomac rode a brilliant final race, in which he needed to finish behind Dungey to take the overall win, but a bad first lap buried him deep into the pack. Tomac later charged to third place, passing Dungey along the way.
Dungey eventually got back past Tomac with a lap remaining but couldn’t get past Marvin Musquin for the overall victory and the $100,000 prize. Musquin held off teammate Dungey and won third for himself while protecting the overall victory for Tomac.
Honda rider Ken Roczen narrowly missed out on becoming the repeat winner and the second $1 million winner.
“It was a crazy race and I did not make it easy on myself with a terrible start,” said Tomac. “I knew going into the race that I just needed to finish behind Ryan, and I was able to catch up to him and have a good battle before settling on the last lap. I’m really happy with tonight’s performance and looking forward to the next season.”
Roczen was clearly the fastest rider. He easily won the first moto on his new Honda HRC CRF450R and was in front in the second when a mistake exiting a turn ruined him in the following rhythm section. He shook off the crash and beat everyone in the final race, but his 1-21-1 total put him in seventh overall.
In the regular 450cc motocross season. Tomac finished second in the 2016 Lucas Oil Pro Motocross Championship behind Roczen, who racked up 585 points on the season. Tomac finished with 498 points, and Musquin finished third, with 401 points.
Tomac opted out of the 2016 Motocross of Nations in Maggiora, Italy, in September after a strong performance for the U.S. team last year. Cooper Webb served as team captain in the MX1 division, and Alex Martin filled the MX2 slot, while Jason Anderson was the surprise entry for the Open class. The U.S. team finished third.
The Associated Press contributed to this article.