Goldschmidt's fifth homer of the year followed a single by Martin Prado and snapped a 1-1 tie. Goldschmidt's towering drive down the left field hit near the top of the foul pole, and increased his team-leading RBI total to 18.
Trevor Cahill (1-3) earned his first win of the season, giving up an unearned run in five innings.
Jorge Del La Rosa (2-2) allowed three runs in six innings for Colorado..
The Diamondbacks scored first in the second inning. Goldschmidt reached base on an error and moved to second when Cody Ross singled. Goldschmidt then scored on a single to left by reserve catcher Wil Nieves. That put runners on first and second with no outs, but Josh Wilson grounded into a double play and Cliff Pennington flied to left.
The Rockies responded in the fourth.
With runners on second and third and two outs, Yorvit Torrealba hit a soft grounder to third which Martin Prado could not handle. The error enabled Michael Cuddyer to score, but the tie did not last long.
That's when Goldschmidt's home run put Arizona into the lead in the bottom half of the inning.
In the seventh, the Rockies pulled within one run. Troy Tulowitzki's two-out double to the base of the fence in right center scored Eric Young, Jr., who had opened the inning with a double.
Josh Collmenter allowed one run in three innings of relief of Cahill. J.J. Putz pitched the ninth for his fourth save.
NOTES: Prior to the game, the Rockies placed veteran first baseman Todd Hilton on the 15 DL with left forearm inflammation, retroactive to April 20. To replace the 39-year-old on the roster, the Rockies recalled infielder Ryan Wheeler from Triple-A Colorado Springs. Helton is eligible to come off the DL May 5. . Cahill's win was his first since last Sept. 19, a 6-2 victory over San Diego. . The fourth inning error by Prado was his first of the season, and only the sixth for the Diamondbacks in 22 games. Coming into the game, Arizona led the majors in fielding with a .994 percentage. . With two hits, Gerardo Parra equaled a career-high 10 game hitting streak.