Lance Armstrong put the seal on what will be his seventh-straight Tour de France title by winning his first 2005 stage - the individual time trial.
The American clocked one hour, 11 minutes and 46 seconds to smash rival Jan Ullrich's time in Saint Etienne.
Accidents permitting, he will be crowned champion on the Champs-Elysees after the formality of Sunday's stage.
Ullrich made the move of stage 20 by eroding Mickael Rasmussen's two-minute advantage to take third spot overall.
Dane Rasmussen had a horrible day in the saddle, falling off his bike twice and suffering a puncture as his hopes of standing on the Paris podium faded in a flash.
He ended up only seventh on general classification, while second-placed Ivan Basso battled gamely to hold off the charging Ullrich, who was second quickest on the stage.
But the day belonged to Armstrong, who looked absolutely determined to win the final time trial of his professional career in front of his children and girlfriend Sheryl Crow.
The Texan had a minor shock at the first check, when he was unable to match Basso's surprise benchmark time.
But it turned out that the Italian had gone out too hard on a tricky, technical course and Armstrong surged ahead of his pace - and that of in-form Ullrich - in the latter stages.
"To be honest, I wasn't exactly sure that I could win," said Armstrong, anticipating a life of retirement that starts on Sunday.
"All the Tour wins have been special - the first was special of course and the third was the one where I was probably at the peak of my physical fitness.
"Now, it's nice to be done, to retire and to be able to move on in life."
Other winners on the day included Alexandre Vinokourov and Bobby Julich, while Australian Cadel Evans set himself up for a shock top-10 finish.
But Ullrich was magnanimous in defeat - as he has often been during the Armstrong era.
"Right from the very first metre, I gave it all I had," he said.
"It was a hard time trial on a hard course. I gave it my best shot but it was never going to be enough against Lance."
Stage 20 result:
1. Lance Armstrong (US/Discovery) one hour 11 minutes and 46 seconds
2. Jan Ullrich (Ger/T-Mobile) at 23 secs
3. Alexander Vinokourov (Kaz/T-Mobile) at 1:16
4. Bobby Julich (US/CSC) at 1:33
5. Ivan Basso (Ita/CSC) at 1:54
6. Floyd Landis (US/Phonak) at 2:02
7. Cadel Evans (Aus/Lotto) at 2:06
8. George Hincapie (US/Discovery) at 2:25
9. Francisco Mancebo (Spa/Balears) at 2:51
10. Vladimir Karpets (Rus/Balears) at 3:05
1. Lance Armstrong (US/Discovery) 82h 34min 05sec
2. Ivan Basso (Ita/CSC) at 4:40
3. Jan Ullrich (Ger/T-Mobile) at 6:21
4. Francisco Mancebo (Spa/Balears) at 9:59
5. Levi Leipheimer (US/Gerolsteiner) at 11:25
6. Alexandre Vinokourov (Kaz/T-Mobile) at 11:27
7. Mickael Rasmussen (Den/Rabobank) at 11:33
8. Cadel Evans (Aus/Lotto) at 11:55
9. Floyd Landis (US/Phonak) at 12:44
10. Oscar Pereiro (Spa/Phonak) at 16:04