It took a little longer than expected but Tipperary eventually hit their stride at Croke Park and burned off Dublin to secure an Allianz Hurling League semi-final place.
Michael Ryan's side were hot favourites to advance to a last four clash with neighbours Limerick next weekend though lived dangerously initially, surprisingly falling eight points behind.
Pat Gilroy's Dublin, fresh off a strong performance against Galway and a win over Laois, started at a furious pace and opened up a 0-09 to 0-01 lead inside just 10 minutes.
Six different Dublin players scored during that early burst and a shock win to defy bookmakers odds of 8/1 looked like a genuine possibility.
Gilroy's demand for a high work-rate from his team was best exemplified by first-half frees for Dublin, converted by Donal Burke, which came after Padraic Maher and Paudie Feehan were hustled and harried into over carrying.
But Dublin couldn't keep it up and Tipperary came roaring into the game to draw level at 0-11 apiece by the 23rd minute.
They took the lead for the first time in the 26th minute when John McGrath, who finished with 1-04 from play, fired Tipp's opening goal.
That put the 2016 All-Ireland champions and 2017 league finalists into a lead they would hold onto for the remainder of the contest, eventually running out 11-point victors.
Tipperary have beaten Dublin in the Allianz Hurling League and will now see themselves up against Limerick in the Semi-Final, Watch Full-Time Highlights here on GAANOW! pic.twitter.com/eOKBxwg4EN
— The GAA (@officialgaa) March 25, 2018
Michael Ryan's side lost midfielder Ronan Maher to a red card in first-half stoppage time following a second yellow card for a high challenge on Ryan O'Dwyer.
It didn't affect them because they led 1-15 to 0-14 at half-time and built on that advantage with another 1-10 after the break.
Ryan brought on John 'Bubbles' O'Dwyer who hit two points while the likes of Paul Shanahan, Paul Maher and Willie Connors all got rare senior run-outs at Croke Park as second-half substitutes.
Dublin were well off the pace throughout the second-half and Gilroy will be alarmed at the drop in standards after that great start.
After hitting 10 points in the opening 12 minutes, Dublin only managed another 10 points for the remainder of the game and five of those would come from frees through Burke and Fionn O Riain Broin.
Still, like the loss to Galway in Round 4, there were plenty of positives from the occasion with Danny Sutcliffe excellent early on for the hosts while veteran Conal Keaney weighed in with three points overall.
Tipperary centre-back Padraic Maher was named Man of the Match and got on the score-sheet with a second-half point.
Free-taker Jason Forde maintained his prolific spring form with 0-9 while Michael Breen hit Tipp's second goal in the 55th minute to all but wrap it up at that stage.
Tipperary: Brian Hogan; Alan Flynn (0-01), James Barry, Michael Cahill; Barry Heffernan (0-01), Padraic Maher (0-01), Paudie Feehan; Seamus Kennedy (0-01), Ronan Maher (0-02); John McGrath (1-04), Billy McCarthy, Sean Curran (0-02); Michael Breen (1-00), Jason Forde (0-09, 0-07f), Cian Darcy (0-02).
Subs: John O'Dwyer (0-02) for Darcy (45), Paul Maher for Kennedy (66), Paul Shanahan for Breen (68), Tomas Hamill for Feehan (70), Willie Connors for McCarthy (72).
Dublin: Alan Nolan; Paddy Smyth, Bill O'Carroll, Eoghan O'Donnell; James Madden, Chris Crummey, Shane Barrett (0-01); Rian McBride, Fiontan MacGib (0-02); Donal Burke (0-07, 0-06f), Conal Keaney (0-3), Danny Sutcliffe (0-03); Paul Winters (0-3), Ryan O'Dwyer, Ronan Hayes.
Subs: Fergal Whitely for Hayes (h/t), Robbie Mahon for O'Dwyer (42), Darren Kelly for Crummey (50), Cillian Costello for Winters (55), Fionn O Riain Broin (0-01, 0-01f) for McBride (62).
Referee: Sean Cleere (Kilkenny).