Gareth Bale fired Wales to a 2-1 World Cup play-off semi-final victory over Austria that leaves them in sight of their first appearance in the finals for 64 years.
Bale produced two stunning strikes – one in each half – before Wales had to endure anxious moments after Marcel Sabitzer’s deflected effort halved the deficit.
Wales will now play Scotland or Ukraine for a place at the 2022 World Cup finals in Qatar.
That play-off semi-final is now expected to be played in June, with the final set to follow later the same month.
Bale came into the game with doubts over his fitness after missing Sunday’s El Clasico between Real Madrid and Barcelona.
He also knew that, with his 33rd birthday fast approaching, this year’s World Cup acts as the last chance of him appearing on football’s biggest stage.
But he stood up when his country needed him, extending his own goals record for Wales to 38 in 101 games.
Wales were unbeaten at home in 16 matches, the longest run on Welsh soil in their history.
Goalkeeper Danny Ward and striker Kieffer Moore were sidelined, but Bale – who was injured and sat in the Cardiff stands when the Republic of Ireland delivered a fatal World Cup knock-out blow five years ago – had insisted that he could play on to extra time and penalties if needed.
Aaron Ramsey was also passed fit despite limited game time at Rangers and Wayne Hennessey, Ethan Ampadu and Harry Wilson also came into the side after the November draw with Belgium.
Austria, 10 places below Wales in the FIFA world rankings at 30, had scored eight goals in beating Israel and Moldova in their final two qualifiers in November.
But they had finished fourth in their qualifying group, only earning a play-off spot by virtue of winning their Nations League section, and had not won a competitive game against higher ranked opponents during Franco Foda’s four years in charge.
Wales tested Austria goalkeeper Heinz Lindner inside 75 seconds after David Alaba had been pressed ferociously by Connor Roberts.
But Wales breathed a huge sigh of relief in the fifth minute when Sabitzer slid Christoph Baumgartner through on goal.
Baumgartner’s effort took the smallest of deflections off Neco Williams and looped onto the crossbar with Hennessey beaten.
Ramsey almost got on the end of a Daniel James cross, but with Alaba showing his quality Austria were largely comfortable.
That was to change in dramatic fashion when Baumgartner blocked off Wilson to give Wales a free-kick 25 yard out.
Bale had not scored a free-kick for his country since beating England’s Joe Hart at Euro 2016.
But Lindner was reduced to the role of spectator as Bale’s shot whistled past him and into the top left-hand corner of his net, kissing the underside of the bar on its way in.
Ramsey almost doubled Wales’ lead five minutes before the break when Austria were caught by a quick counter-attack.
This time Lindner was equal to the task, tipping the ball around the post with a superb one-handed save.
Bale doubled Wales’ lead six minutes after the restart following a short corner routine.
Ben Davies touched on James’ cross and Bale adjusted his feet superbly to lash the ball past Lindner.
Bale wasted a gilt-edged opportunity to complete his hat-trick, and Wales were punished when Sabitzer’s 64th-minute effort deflected off Davies to leave Hennessey helpless.
Wales wanted a penalty for handball when Sabitzer stopped a Bale free-kick and Austria continued to push forward.
But Wales held on and the dream to reach the World Cup for the first time since 1958 lives on.