Without a century since January 2021, Smith produced one of his classic Test innings to help put Australia in charge of the second Test on Friday.
In control from the outset, Smith waited on loose balls from Sri Lanka's bowlers before bringing up his century off 191 deliveries.
On one of the few times a ball beat Smith's bat, the right-hander gave an immediate thumbs-up down the wicket to debutant Prabath Jayasuriya.
But moments like that were few and far between on Friday.
He drove superbly through the offside, taking Sri Lanka's spinners down the ground whenever they over pitched.
The vice-captain also produced arguably the best two shots of the day, twice punching Jayasuriya to the long-on boundary.
Ten of his 13 boundaries came down the ground, showing a far greater willingness than his teammates to play straight on turning decks.
Smith had maintained in recent months that his longest drought since his first Test ton in 2013 had not been playing on his mind.
But the joy was evident to see when he brought up his century, driving Kasun Rajitha through the covers and raising his arms aloft after hugging teammate Alex Carey.
Smith had also made clear he looked forward to batting under pressure again and on the spinning Sri Lankan wickets, after runs had been scored around him in recent years.
And while Marnus Labuschagne also scored a century on Friday, these were runs desperately needed by Australia.
Brought to the wicket at 2-70, Australia would have found themselves in trouble if Smith hard fallen early.
But by the time he brought up three figures, they were well in control of the game at 5-281.
Smith's century brought him back level with Joe Root on 28, after it had been pointed out to him during the week the former England captain had briefly overtaken him.
He is also now level with Michael Clarke for the fifth most tons in Australia's history, with only Ricky Ponting, Steve Waugh, Matthew Hayden and Don Bradman ahead of him.