Pace bowler Tendai Chatara and spinner Sikandar Raza claimed three wickets each to put Zimbabwe on top in the first Test against Bangladesh in Sylhet on Sunday.
Chatara claimed 3-19 and Raza grabbed 3-35 as Zimbabwe bowled out the hosts for 143 runs after left-arm spinner Taijul Islam took 6-108 to end the visitors' first innings on 282 in the morning.
Zimbabwe, who pocketed a 139-run first innings lead, were 0-1 at stumps on the second day at the Sylhet International Cricket Stadium.
Debutant Ariful Haque was the only Bangladesh batsman to offer some resistance, scoring an unbeaten 41 runs while wicketkeeper-batsman Mushfiqur Rahim made 31.
Mushfiqur helped Bangladesh recover briefly from 19-4 before he fell to Kyle Jarvis, who claimed 2-28 to play his part in the demolition act.
Zimbabwe gained the upper hand early on when in-form opener Imrul Kayes dragged a Chatara delivery onto his stumps for five in the fourth over of the innings.
The hosts then lost three wickets in nine balls.
Opener Liton Das followed Imrul on nine, giving a catch to wicketkeeper Regis Chakabva before Zimbabwe successfully reviewed a caught behind appeal against Nazmul Hossain (five) off fast bowler Chatara.
After Chatara bowled stand-in skipper Mahmudullah for nought in the same over, Mushfiqur Rahim and Mominul Haque shared 30 runs for the fifth wicket to momentarily halt the damage.
Sikandar Raza removed Mominul for 11 before Mushfiqur's dismissal in the first over of the final session exposed the Bangladesh tail.
Mehidy Hasan's 21 runs proved inadequate with Bangladesh being dismissed for less than 200 runs in seven consecutive Test innings.
Bangladesh spinner Taijul dominated the opening session, adding four wickets to his overnight haul of two to end Zimbabwe's innings before lunch, after the visitors resumed the second day's play on 236 for five.
Overnight batsman Peter Moor was not out 63 with Taijul wreaking havoc at the other end.
Zimbabwe remained unscathed for nearly an hour but lost their remaining wickets in a rush after Taijul broke through the resistance of Regis Chakabva (28).
A brilliant reflex catch by Nazmul at short leg broke Chakabva's 60-run partnership with Moor for the sixth wicket.
Taijul then removed Wellington Masakadza, who was caught behind for five, and Kyle Jarvis for four to complete his fourth five-wicket haul in Tests.
Fellow left-arm spinner Nazmul Islam trapped Brandon Mavuta leg-before for three to hasten Zimbabwe's collapse.
Taijul also claimed the final wicket of Chatara, who was caught by Das at slip.
Moor, unbeaten on 37 overnight, was left stranded after making his fourth Test fifty and first overseas. His half-century came off 192 balls with the help of six boundaries.