Ireland held off a stirring second-half Wales comeback to launch their Six Nations campaign with a thrilling win and condemn the champions to an eighth successive Test defeat.
Converted tries from Simon Zebo and Cian Healy and three Jonny Sexton penalties gave Ireland a commanding 23-3 half-time lead, Leigh Halfpenny's penalty Wales' only riposte.
Brian O'Driscoll's score on the resumption increased Ireland's lead before tries from Alex Cuthbert, Halfpenny and replacement Craig Mitchell revived the hosts.
But Ireland, who had Rory Best and Conor Murray yellow-carded, held out in a breathless encounter.
It was their 11th win in their past 14 visits to Cardiff, Wales suffering a fifth straight home defeat for the first time in their history.
Failure to beat France in Paris next Saturday would see them travel to Rome on 23 February striving to avoid equalling their record run of 10 successive defeats.
Ireland, meanwhile, have the ideal base from which to launch a title challenge, with England - next Sunday - and France both to visit Dublin.
After an even opening 10 minutes, the visitors opened the scoring with a cracking try in the 11th minute, the spark for a 20-point burst inside 18 minutes.
Wales full-back Halfpenny had already pulled off one try-saving tackle to deny Ireland's Six Nations debutant wing Craig Gilroy in the right corner.
But from the resultant scrum the visitors swiftly moved the ball left and the returning O'Driscoll showed his class by jinking inside Alex Cuthbert before putting Zebo over in the left corner with a sumptuous pass.
Sexton nailed the conversion from the touchline and Ireland sensed another opportunity when Wales were penalised at the scrum for a second time.
The Leinster fly-half drilled the ball to the corner but Best failed to locate Peter O'Mahony at the tail of the line-out, allowing Wales the chance of a break-out, but the normally reliable Jonathan Davies sent the vital pass behind Cuthbert and into touch.
The dangerous Gilroy was then almost in at the right corner for a second time, Halfpenny just doing enough to tip him over inches before the line.
But Ireland continued to apply pressure from a scrum on the Welsh line, debutant lock Andrew Coombs conceding a penalty which Sexton landed for 10-0.
Things swiftly went from bad to worse for the defending champions. Lock Ian Evans turned over possession at a ruck and Dan Biggar's clearing kick was charged down by Best.
The Ireland hooker showed poise and vision to collect the ball on the run and send a pass out to Jamie Heaslip. The captain swiftly fed Zebo, who acrobatically kept it alive with his heel before prop Healy eventually plunged over.
Wales were in desperation mode, number eight Toby Faletau getting isolated as he drove into the Irish defence, the visitors winning the turnover and Sexton drilling Wales 60m back with a kick to touch.
Mike Phillips then conceded another penalty and Sexton made it 20-0 after 29 minutes.
Another Wales attack fizzled out as Davies - for the second time - sent a pass behind Cuthbert into touch before Halfpenny finally got the hosts on the board with a penalty in the 34th minute.
It briefly energised Wales, adding snap to their passing. They laid siege to the Irish line as half-time approached, but the visitors' defence held firm and Wales' efforts grew increasingly frantic before referee Romain Poite penalised Aaron Shingler for holding on in the tackle.
A try at that stage might have put a different complexion on matters, but instead Wales conceded another penalty and Sexton restored Ireland's 20-point advantage at the interval.
Any hope of a home comeback appeared to disappear within three minutes of the resumption. Biggar missed a couple of tackles and Rob Kearney was held up on the line before O'Driscoll extended his own Irish try record to 46, and his Six Nations record to 26, diving over from no more than a metre. Sexton's conversion made it 30-3.
Wales sent on Justin Tipuric for Shingler to try to wrestle back the breakdown battle, and the Ospreys flanker made an instant impression with his athleticism around the field.
Faletau was held up in the right corner but Cuthbert came charging onto Biggar's pass at an angle to score at the posts, Halfpenny adding the extras.
Suddenly it was all Wales, battering away at the Irish line. The visitors defended desperately, conceding two penalties before Poite yellow-carded Best for the third offence.
Wales were quick to profit from the extra man, Davies sending Halfpenny in at the right corner.
The full-back could not convert, and Ireland survived further damage during the hooker's absence despite the constant onslaught.
With 10 minutes left, Faletau was held up just short as he tried to force his way over, with Ireland scrum-half Murray earning Ireland's second yellow card.
Wales had further chances - Davies inexplicably delaying his pass to Halfpenny on one occasion - before replacement prop Mitchell was awarded a close-range try after consultation with the television match official.
But Wales still needed two scores, and a brave comeback fell short.
Wales: 15-Leigh Halfpenny, 14-Alex Cuthbert, 13-Jonathan Davies, 12-Jamie Roberts, 11-George North, 10-Dan Biggar, 9-Mike Phillips; 1-Gethin Jenkins, 2-Matthew Rees, 3-Adam Jones, 4-Andrew Coombs, 5-Ian Evans, 6-Aaron Shingler, 7-Sam Warburton (captain), 8-Toby Faletau.
Replacements: 16-Ken Owens (for Rees 52), 17-Paul James (for Jenkins, 67), 18-Craig Mitchell (for Jones, 73), 19-Olly Kohn (for Evans, 73), 20-Justin Tipuric (for Shingler, 43), 21-Lloyd Williams (for Phillips, 63), 22-James Hook (for Biggar, 73), 23-Scott Williams
Ireland: 15-Rob Kearney; 14-Craig Gilroy, 13-Brian O'Driscoll, 12-Gordon D'Arcy, 11-Simon Zebo; 10-Jonathan Sexton, 9-Conor Murray; , 1-Cian Healy, 2-Rory Best, 3-Mike Ross, 4-Mike McCarthy, 5-Donnacha Ryan, 6-Peter O'Mahony, 7-Sean O'Brien, 8-Jamie Heaslip (captain).
Replacements: 16-Sean Cronin, 17-David Kilcoyne (for Healy, 73), 18-Declan Fitzpatrick (for Ross, 69), 19-Donncha O'Callaghan, 20-Chris Henry (for O'Mahony, 52), 21-Eoin Reddan (for Zebo, 80), 22-Ronan O'Gara, 23-Keith Earls (for D'Arcy, 43).
Yellow card: Best (58)
Referee: Romain Poite (France)