On a perfect batting track, Dhawan and Murali Vijay (89 not out) feasted on the hosts’ limited bowling resources even though heavy showers meant only 56 overs could be played at Fatullah’s Khan Shaheb Osman Ali Stadium.
Vijay survived a couple of leg-before appeals while Dhawan was dropped on 73 but India skipper Virat Kohli eventually had reason to feel vindicated after deciding to bat first.
The left-right opening combination presented contrasting batting approaches with Vijay looking tentative while Dhawan, left out of the side from the Sydney test against Australia in January, was at his fluent best.
Spin was introduced as early as the sixth over and Dhawan greeted off-spinner Shuvagata Hom by hitting him for back-to-back boundaries.
In the next over, the 29-year-old southpaw hit Mohammad Shahid, the hosts’ lone specialist seam bowler in a surprising team selection, for three boundaries.
In the final over, before a steady shower held up play for nearly three hours, Dhawan spooned the ball to short mid-wicket where a diving Hom got both hands to it but could not hold on.
The batsman went on to complete his third century from 101 balls after Vijay had helped himself to his 11th test fifty.
Right-handed Vijay brought up the 200-run opening stand with the only six of the day off Jubair Hossain.
India’s 34-year-old off-spinner Harbhajan Singh, who has played 101 tests since his debut in 1998 but last featured in March, 2013 against Australia, is back in the team.
For the hosts, Litton Das made his test debut as captain Mushfiqur Rahim cannot keep wicket because of a finger injury.
(Reporting by Amlan Chakraborty in New Delhi; editing by Sudipto Ganguly and Ken Ferris)