Pau Gasol and Jose Calderon rescued Spain after the break as the European champion rallied to beat Russia 67-59 and reach its second straight Olympic gold medal game against the United States.
Kevin Durant scored 19 points while Carmelo Anthony and LeBron James added 18 a piece as heavily favoured Americans rolled past Argentina 109-83 in the second semifinal yesterday.
Four years ago in Beijing, the Spaniards hung with the Americans before losing 118-107.
"It's huge to make it twice in a row to the Olympic finals," Pau Gasol said. "We have to enjoy it and appreciate the moment, but there's still one game left. We can't just be happy with reaching the final."
The US will play Spain for the gold medal, a rematch of the final at the Beijing Games won by the Americans four years ago.
More From This Section
With James doing a little of everything, the Americans finally pulled away in the third quarter from Argentina, whose strong outside shooting had them within six points at half time. But the defending bronze medalists eventually cooled off.
James added seven rebounds and seven assists before taking a seat in the fourth quarter.
Manu Ginobili scored 18 to lead Argentina, which will play Russia tomorrow for the bronze medal.
"We had a great run in the first half. We started the third very well. And then we blinked," Ginobili said.
"They started hitting the 3s, getting rebounds. They did what they are supposed to do."
Spain lost two games in group play, including to Russia, but the team loaded with NBA players has risen to the occasion again when it matters. It beat France in a tense quarterfinal after trailing and did it again against Russia, which collapsed in the second half.