England, desperate to avoid a 5-0 series sweep, lost a wicket in the gloaming when Mitchell Johnson had Michael Carberry caught at leg slip for a duck, leaving captain Alastair Cook (seven) and nightwatchman James Anderson (1) at eight for one at stumps. (Agencies)
Smith was the final Australian wicket to fall for 115 and while his second century of the series put a thick layer of gloss on the day for the hosts, there was no doubt the momentum shifted with wicketkeeper Haddin's 90-ball 75.
Australia were well and truly on the ropes at 97 for five after England struck twice in the 15 minutes before lunch and then dismissed George Bailey for one within 10 minutes of the resumption.
Haddin, as he has in all four previous tests when his team were in similarly precarious positions, came out oozing positivity and took the game to the bowlers with a barrage of aggressive strokes.
England contributed to their own demise by bowling short to a batsman who was clearly happy to pull and hook to the boundary all day with Ben Stokes (6-99) suffering particular punishment.
The torment for the tourists only deepened when paceman Boyd Rankin, one of three new caps in the side, hobbled off the field after lunch with what looked like a left hamstring strain.
The tall Irishman returned to bowl in the final session but lasted just one delivery before having to limp back off the field.
Haddin grabbed his fifth half century of the series before tea with a hurried single and Smith joined him with a half century of his own with a cover drive for four soon after the break.
Stokes got a measure of revenge when he ended Haddin's innings after 124 match-turning minutes, inducing an edge which Cook held in the slips.
That brought out Johnson, who stayed with Smith for an hour or so and 12 runs before holing out in the deep to substitute fielder Joe Root to give debutant leg spinner Scott Borthwick his first test wicket.
Smith, though, charged inexorably towards his third test century, teeing it up with a thunderous six off Borthwick to move to 99 and passing the milestone with a clattering four, his 16th, two balls later.
Australia's tail continued to wag and Ryan Harris scored a bright 22 before becoming Stokes's fourth victim with Peter Siddle following him back to the pavilion from the next delivery for a golden duck.
Nathan Lyon fended off the hat-trick ball from Stokes and it was Smith who became the young all-rounder's sixth victim when he slapped the ball to Root at midwicket to end the innings.
The day had started well for England when Cook won the toss for the first time in the series and chose to send his new-look team out to bowl on a green-tinged wicket under overcast skies.
David Warner (16), Chris Rogers (11), Australia captain Michael Clarke (10) and Shane Watson (43) were then all dismissed as England claimed the honours in the first session.
While England rang the changes by dropping Root, spinner Monty Panesar and seamer Tim Bresnan and awarding first caps to Gary Ballance, Borthwick and Rankin, Australia were unchanged for the fifth match in a row.
England, desperate to avoid a 5-0 series sweep, lost a wicket in the gloaming when Mitchell Johnson had Michael Carberry caught at leg slip for a duck, leaving captain Alastair Cook (seven) and nightwatchman James Anderson (1) at eight for one at stumps.