Gareth Anscombe will leave Cardiff Blues at the end of the season to join their Guinness PRO14 rivals Ospreys.
The Wales fly-half, 27, had been offered a new contract by Blues and also been linked with English clubs Harlequins, Bath and Bristol.
"I'm delighted to have secured my future to play professional rugby in Wales and to be joining the Ospreys. I am very happy to finally be able to put pen to paper during what's been an unsettling time and commit to staying in Wales," Anscombe told Ospreys' official website.
"I know a lot of the boys from my time with the Wales team and they can't speak highly enough of the spirit and ambition within the Region, which really excites me.
"I've been impressed with the vision and the long term goals of the coaches and Region as a whole and I would like to thank them for supporting my dream to continue playing pro rugby in Wales and, if I am playing well enough, to play for my country."
Anscombe's contract with Blues expires in the summer, while his decision to join Welsh regional rivals Ospreys means he will still be eligible to represent Wales.
He signed a national dual contract (NDC) with the Welsh Rugby Union when he joined Blues from New Zealand side Waikato Chiefs in 2014.
NDCs have been replaced by a new player banding pay system by the WRU, with wages and categories set by the new Professional Rugby Board (PRB) and Anscombe's appeal against his pay banding had been rejected.
Anscombe, Wales' first-choice fly-half during their 2019 Six Nations Grand Slam, would not have been eligible to play for Wales had he moved out of the principality as he has not played in 60 Tests.
He made his debut for Wales in 2015 – he qualifies due to his Welsh mother – and has established himself as their first-choice number 10 after winning 26 caps. He has scored 597 points in 76 appearances for Blues.
ga('create', 'UA-72310761-1', 'auto', {'name': 'pacontentapi'});
ga('pacontentapi.set', 'referrer', location.origin);
ga('pacontentapi.set', 'dimension1', 'By Press Association Sport staff');
ga('pacontentapi.set', 'dimension2', '10450943-433e-496a-93e4-49915ef2f44e');
ga('pacontentapi.set', 'dimension3', 'paservice:sport,paservice:sport:uk');
ga('pacontentapi.set', 'dimension6', 'story');
ga('pacontentapi.set', 'dimension7', 'composite');
ga('pacontentapi.set', 'dimension8', null);
ga('pacontentapi.set', 'dimension9', 'sport:rugby-union');
ga('pacontentapi.send', 'pageview', { 'location': location.href, 'page': (location.pathname + location.search + location.hash), 'title': 'Anscombe to join Ospreys from Cardiff'});