
Opening batsman Tamim was out at 109 while Imrul at 130, keeping the home side into a solid stand.
The pair added 224 runs for the first wicket, Bangladesh's highest opening stand, in 63.5 overs, breaking their own 185 made at Lord's in 2010. This was the first time a Bangladeshi opening pair had batted the first two sessions of a Test.
Bangladesh lost two wickets in the final session of the day with Mominul Haque and Mahmudullah remaining unbeaten on 46 and 5 respectively.
When opening batsmen went past 185, they topped the biggest opening stand for Bangladesh. The previous one was made by this pair against England at Lord's in 2010, and this is the fourth Bangladeshi double-century stand for any wicket. The partnership is also Bangladesh's highest against Zimbabwe.
Tamim was the first to reach the milestone, in the 55th over while Imrul got to his century mark nearer to the tea break, in the 59th over. Records and milestones have been the order of the day so far with Bangladesh completely in command of the first two sessions.
Tamim's sixth Test century came up with a quickly taken single past square-leg. He took exactly 150 balls, with 14 boundaries and a straight hit six. At times Tamim looked the more restrained of the two opening batsmen, but he used his experience to let go of many opportunities and wait for absolute half-volleys or over-pitched deliveries.
He opened up in the second session with more driven shots down the ground; his straight-drives stood out, as did his complete control when tucking the ball through midwicket time after time. He was severe on the seamer Tinashe Panyangara and legspinner Natsai M'shangwe while keeping his shape against the other bowlers without dominating them like the old Tamim.
He ended the session on 104 off 163 balls with 14 boundaries and a six while Imrul's second Test century is now on 103 off 197 balls with nine fours and two sixes.
Imrul's innings had an element of luck when Brian Chari dropped an easy chance at deep square-leg off a M'shangwe full-toss. He also survived a few close calls but it has been yet another effort when he looked to be a better batsman than his first spell in international cricket.
He played out more dot balls than Tamim but whenever he looked to be stuck in rut, he did get the odd single to relieve the pressure.
The Zimbabwe bowlers have looked hapless so far, particularly M'shangwe who must be cursing his luck after the Imrul drop. Panyangara has created the odd chance but Shingi Masakadza hasn't produced any significant deliveries yet.
Bangladesh captain Mushfiqur Rahim won his second successive toss and elected to bat. The hosts have made two changes in the XI that defeated the visiting team in the second test in Khulna to clinch the series 2-0.
Imrul Kayes comes back into the team and is slotted in to open while Shahadat Hossain will not play either, with Shafiul Islam taking his place.
For Zimbabwe, Malcolm Waller has been sidelined after being reported for a suspect action. Richmond Mutumbami has slotted in. Shingi Masakadza takes over Tendai Chatara's duties.
Having already won the series, the confident Tigers are looking to complete a historic whitewash in the third and final Test. The hosts have never won a series by a 3-0 margin and this is their best chance to achieve the goal. On the other hand, the visitors will be aiming to avoid a clean sweep.
Bangladesh Team
Tamim Iqbal, Imrul Kayes, Mominul Haque, Mahmudullah, Shakib Al Hasan, Mushfiqur Rahim*†, Shuvagata Hom, Taijul Islam, Shafiul Islam, Rubel Hossain, Jubair Hossain
Zimbabwe Team
Sikandar Raza, B Chari, H Masakadza, BRM Taylor*, CR Ervine, E Chigumbura, RW Chakabva, T Panyangara, N M'shangwe, R Mutumbami†, SW Masakadza
ZA