The five tries gave the hosts their first win over Warren Gatland's men in this competition since 2014 and ends any realistic chance their opponents had of clinching the crown.
Ireland had led 15-13 at the half after Bundee Aki's score right on the whistle, and while Wales had led 13-5 at one point, it was no more than Ireland deserved.
They had all the ball in the first half, and forced Wales into over 100 tackles, but a Gareth Davies try, and 8 points from the boot of Leigh Halfpenny had more than cancelled out Jacob Stockdale's first of the game.
After the turn, Dan Leavy and Cian Healy barged over to bring up the bonus point but there was a nervy finish in store when Aaron Shingler cut the lead to just seven in the final quarter.
Conor Murray's late penalty appeared to secure the win with only four minutes left, but a Steff Evans try came only seconds later. Ireland though would have the last say with Stockdale's lengthy intercept with the clock already red sealing the deal.
With England facing Scotland later today, the tantalising possibility of a Grand Slam decider in Twickenham between Ireland and the back-to-back champions remains on.
IRELAND: R Kearney; K Earls, C Farrell, B Aki, J Stockdale; J Sexton, C Murray; C Healy, R Best (c), A Porter, J Ryan (for Porter, 66), D Toner; P O'Mahony, D Leavy, CJ Stander.
REPLACEMENTS: S Cronin (for Best, 70), J McGrath (for Healy, 62), J Ryan (for Porter, 66), Q Roux (for Toner, 73), J Conan (for O’Mahony, 66), K Marmion, J Carbery, F McFadden (for Earls, 62)
WALES: L Halfpenny; L Williams, S Williams, H Parkes, S Evans; D Biggar, G Davies; R Evans, K Owens, S Lee; C Hill, AW Jones (c); A Shingler, J Navidi, R Moriarty.
REPLACEMENTS: E Dee (for Owens, 55), W Jones (for Evans, 55), T Francis (for Lee, 55), B Davies (for Hill, 62), J Tipuric (for Moriarty, 22) A Davies, G Anscombe (for Biggar, 62), G North (for L Williams, 62)