The win set up a semifinal clash between the 30-time Davis Cup champions and the defending champion France in September. The other semifinal will be contested between Argentina and Russia.
The 19-year-old Roddick improved his Davis Cup singles record to 7-0. That marks the best start by U.S. Davis Cup player since Andre Agassi won his first seven Davis Cup singles matches in 1988-89.
Considered strong favorites playing on grass courts at the Westside Tennis Club in Houston, the Americans' confidence was undermined on Friday, when Alex Corretja rallied from two sets down to shock seven-time Wimbledon champion Pete Sampras in five sets in the second singles match as Spain pulled even at 1-1.
But the doubles tandem of James Blake and Todd Martin boosted the Americans on Saturday with a triumph over Spain's duo of Martin and Juan Balcells before Roddick secured success.
In the inconsequential final singles match, play was suspended because of rain with Tommy Robredo of Spain leading James Blake, 6-1, 5-4.
Also, in Pau, France, Fabrice Santoro wasted a two-set lead before prevailing over Bohdan Ulihrach of the Czech Republic, 7-6 (7-2), 7-5, 3-6, 4-6, 6-3, and salvaging a 3-2 quarterfinal win for the home country.
Santoro converted three of four break-point opportunities in the final set to keep his country alive in the tournament.
France took a 2-1 lead into Sunday, but Czech Jiri Novak knotted matters with a 3-6, 6-1, 6-3, 6-1 triumph over Frenchman Sebastien Grosjean.
In Buenos Aires, Gaston Gaudio of Argentina never was threatened on his serve as he cruised to a 6-4, 6-4, 6-2 victory over Ivo
Karlovic of Croatia in Sunday's deciding singles match.
In Moscow on Sunday, Thomas Johansson of Sweden defeated Mikhail Youzhny of Russia, 6-3, 6-4, and Andrei Stoliarov of Russia recorded a victory over Andreas Vinciguerra when the Swede retired with a back injury when the score was 4-6, 5-2. Russia won the tie, 4-1.
Russia already had sealed its first victory over Sweden in the last five Davis Cup meetings, winning the two singles matches on
Friday and the doubles contest Saturday.