Andre Agassi will make his sixth US Open final appearance on Sunday after beating Robby Ginepri in five sets in the semi-finals.
The 35-year-old, playing in his 20th consecutive US Open, was not at his absolute best in a match littered with break points for both players.
But his experience told in the deciding set, with a break in game six giving him a 6-4 5-7 6-3 4-6 6-3 victory.
Roger Federer takes on Leyton Hewitt in the second semi-final.
Agassi went into the match as a heavy favourite against the unseeded Ginepri and the Las Vegan broke serve immediately.
But with neither player serving well there were opportunities on both sides, Ginepri levelling at 3-3 before Agassi broke decisively in game nine by slowing the pace with his sliced backhand.
Ginepri was getting plenty of chances, however, and he let an early lead slip in the second set before wasting seven more break points in an epic game six.
With a tie-break looking inevitable, Agassi threw in a poor game 12 and Ginepri capitalised to level - one drop shot a particular highlight.
But Ginepri could not build on his momentum when Agassi looked, briefly, to be struggling to keep pace in the third set.
Agassi weathered a few difficult moments before breaking twice to take the set, but Ginepri broke in game seven of the fourth to set up a decider.
The 22-year-old imediately earned two break points in the fifth set but Agassi held on valiantly, and then came up with a magical drop shot to break in game six.
This time there was no wobble from the twice former champion.
With the huge crowd chanting "let's go Andre", he served out to reach the final for the first time since losing to Pete Sampras in 2002.
"I am in the finals," he said afterwards. "It's awesome.
"We are into the home stretch. I will be here tomorrow and let it all hang out."
Ginepri admitted: "Andre was just too good today.
"That's why he's still out here playing and in the finals tomorrow."