England slipped to 84-4 shortly after lunch following another top-order collapse, only for Bairstow to lead the revival with his second ton of the series, finishing day one of the third Investec Test unbeaten on 107, as the hosts closed on 279-6.
Bairstow was dismissed while on 95 back in 2012 after replacing Kevin Pietersen, who was dropped after being found to have sent text messages to members of the South Africa side, that summer’s opponents, regarding then-captain Andrew Strauss.
“Why didn’t I do it four years ago?” said Bairstow. “They were five runs that loomed over me for a few years. People speculated about whether I could do it at this level so it was nice to put the record straight.
“There has been a lot of talk about my technique over a number of years but I am pleased with the way I’m striking the ball and how I’m moving.
“There will always be memories. I was so pleased with the way I played in that Test against South Africa. There were a lot of things going on at the time so to make the contributions I did was very pleasing.
“To go one step further and make a century in front of a packed house here was a very special feeling. The ovation I got was something I will never forget, a pinch yourself moment, with goosebumps.”
Bairstow’s third hundred in six Tests was the standout contribution of the innings, although skipper Alastair Cook also weighed in with 85 – his first half-century of the series – as wickets fell around him.
Fellow opener Alex Hales was dismissed for 18, the under-fire Nick Compton and vice-captain Joe Root were out for single-figure scores, while Test rookie James Vince could only amass 10.
There has been much scrutiny over Compton’s place in the side after failing to score 50 or above since the opening Test against South Africa in December, and the pressure intensified when he edged behind a wide half-volley from visiting seamer Suranga Lakmal.
Bairstow, meanwhile, had two lives, dropped by Shaminda Eranga while on 11 and then given not out to a plausible LBW shout from the same player having progressed his score to 56.