American Tejay van Garderen regained his tiebreaker race lead by finishing third in front of sixth-placed compatriot Christian Vande Velde.
The 40-year-old Voigt, a three-time Tour de France stage winner in his 16-year career, pedalled alone for nearly four hours in periodic rain to complete the 156.5-kilometre course from Aspen to Beaver Creek in three hours and 54 minutes.
Voigt, who earlier in the week re-signed for 2013 with the RadioShack-Nissan squad, escaped from a group of about 15 riders five kilometres into the stage and built as much as a six-minute lead.
He coasted to the finish to claim his first major win in more than two years.
"When it's rainy and windy, it's good for me," said Voigt, who will turn 41 next month, after his 88th career win. "I knew the others would suffer more than me."
Van Garderen and Vande Velde have the same overall race time, but van Garderen has the race lead based on higher stage finishes. "I was looking for a few seconds, but there weren't any gaps," said 24-year-old Van Garderen, who finished fifth last month in the Tour de France.
"If I can stay close in the final mountain stage (stage six), I am confident in my time trialling for the final stage."
Andreas Kloden finished second in the stage behind fellow German Voigt. Ivan Rovny of Russia remains third overall, six seconds behind van Garderen.
Title-holder Levi Leipheimer of the United States remains fourth overall, trailing by eight seconds.
- Christian Vande Velde