Scotland 11 Wales 18
Wales will be crowned Six Nations Grand Slam champions if they beat Ireland next Saturday after surviving a major scare to beat Scotland 18-11 at Murrayfield.
The unbeaten tournament leaders' fourth successive Six Nations victory – and their 13th of a record-breaking winning run – has teed up a mouthwatering occasion in Cardiff.
But they were pushed to the limit by a resilient Scotland team that dominated the second period as Wales were kept scoreless between the 30th and 79th minutes.
Despite a week dominated by rugby politics about the future template for Wales’ professional regional game, though, Warren Gatland’s men just about put it behind them.
First-half tries by wing Josh Adams – his third in the last three Six Nations games – and centre Jonathan Davies sent Wales ever closer to a first Six Nations crown since 2013 and seven years on from their last Grand Slam, while outhalf Gareth Anscombe added two penalties and a conversion.
But they lost fullback Liam Wiliams with an arm injury that could make him a major doubt to face Ireland, as Scotland threatened a famous victory through wing Darcy Graham's second-half try and two Finn Russell penalties.
Wales showed an enforced change from the side that beat England a fortnight ago, with lock Adam Beard replacing ankle injury victim Cory Hill, while Scotland boss Gregor Townsend made four switches, including starts for Graham and scrumhalf Ali Price.
And Scotland started brightly, sourcing quick ball through their halfbacks Price and Russell, but they lost a promising attacking position when skipper Stuart McInally was penalised for foul play.
Scotland, though, took an 11th-minute lead after Wales flanker Josh Navidi infringed and Russell kicked the resulting penalty, yet Wales responded brilliantly.
From their first notable attack, the visitors delivered a superb score as slick passing freed Adams near the touchline and he showed outstanding footwork to round Scotland fullback Blair Kinghorn and touch down unopposed.
Anscombe kicked the conversion for a 7-3 advantage after 13 minutes, and although Russell then booted a second penalty, Scotland lost wing Tommy Seymour with what appeared to be a rib injury.
A long-range Anscombe penalty restored Wales' four-point advantage, and they began to move through the gears, utilising outstanding carrying work from the likes of Navidi, Ross Moriarty and skipper Alun Wyn Jones.
And a second try arrived 10 minutes before the break, with Wales patiently going through an impressive phase-game before it was all rounded off by an easy finish for Davies.
The whole move went through 23 error-free phases, and Wales had control – despite Anscombe hitting the post with an angled 25-metre penalty kick – as they led 15-6 halfway through the contest.
Scotland began the second period in front-foot mode, helped by a powerful run from prop Allan Dell, and Wales were forced into a reshuffle when Williams departed injured, with Dan Biggar replacing him and Anscombe moving to fullback.
The Scotland forwards laid siege to Wales' line, and lock Grant Gilchrist was denied a try by some outstanding defensive work as the home side grew in confidence.
And their pressure was rewarded through a fine 58th-minute score for Graham, which owed everything to smart creative work by Russell and replacement Byron McGuigan and concluded a dominant Scottish third quarter that saw Wales’ penalty count stack up.
Wales, starved of quality possession and territory, could not get their game going as Scotland continued to dominate during a tense final 10 minutes.
But Scotland could not keep their composure as time ticked down, and a relieved Wales – who made a cumulative 160 tackles in the second period – held out as Anscombe kicked a late penalty to set up a huge Principality Stadium encounter in seven days’ time.
SCOTLAND: Blair Kinghorn (Edinburgh); Tommy Seymour (Glasgow), Nick Grigg (Glasgow), Pete Horne (Glasgow), Darcy Graham (Edinburgh); Finn Russell (Racing 92), Ali Price (Glasgow); Allan Dell (Edinburgh), Stuart McInally (Edinburgh, capt), Willem Nel (Edinburgh); Grant Gilchrist (Edinburgh), Jonny Gray (Glasgow); Magnus Bradbury (Edinburgh), Jamie Ritchie (Edinburgh), Josh Strauss.
Replacements: Hamish Watson (Edinburgh) for Ritchie (9-15 mins); Fraser Brown (Glasgow) for Watson (15-21); Byron McGuigan (Sale) for Seymour (21), Adam Hastings (Glasgow) for Kinghorn (both 21); Ben Toolis (Edinburgh) for Strauss, Watson for Gray, Greig Laidlaw (Clermont Auvergne) for Graham; Simon Berghan (Edinburgh)for Nel (all 65), Brown for McInally (70). Not used: Gordon Reid (London Irish).
WALES: Liam Williams (Saracens); George North (Ospreys), Jonathan Davies (Scarlets), Hadleigh Parkes (Scarlets), Josh Adams (Worcester); Gareth Anscombe (Cardiff Blues), Gareth Davies (Scarlets); Rob Evans (Scarlets), Ken Owens (Scarlets), Tomas Francis (Exeter); Adam Beard (Ospreys), Alun Wyn Jones (Ospreys, capt); Josh Navidi (Cardiff Blues), Justin Tipuric (Ospreys), Ross Moriarty (Dragons).
Replacements: Jake Ball (Scarlets) for Beard (21-31 mins & 62 mins); Dan Biggar (Northampton) for Williams (48 mins); Nicky Smith (Ospreys) for Evans (62 mins); Dillon Lewis (Cardiff Blues) for Francis, Elliot Dee (Dragons for Owens (both 65 mins); Aled Davies (Ospreys) for Gareth Davies, Aaron Wainwright (Dragons) for Moriarty (both 70), Owen Watkin (Ospreys) for Parkes (74).