Leading 2-1 after one inning, Seattle broke the game open with three runs in third.
The next batter, Smoak, lifted a fly to right that just made it over the wall, and Seattle had its first back-to-back homers of the season.
Mike Carp also went deep for the Mariners, who had won only one of 13 road games coming into the interleague series.
Blake Beavan (2-4) earned the victory after allowing two runs on seven hits over five frames. He yielded one walk and fanned seven.
Guthrie finished by allowing six runs on seven hits in a six-inning effort.
Carlos Gonzalez went 3-for-5 with a solo homer and two RBI for the Rockies, who lost their fourth straight.