The hosts put on 272-8 on the board in their 50 overs before restricting the visitors to 243-9.
Bangladesh skipper Mashrafe Mortaza won the toss and elected to bat first but his side were rocked early by Zimbabwe pacer Tendai Chatara.
The 27-year-old dismissed opener Liton Das for just four before removing Fazle Mahmud for a duck. Chatara’s opening burst reduced the Tigers to 17-2.
Mushfiqur Rahim and Mohammad Mithun both got starts but were unable to convert them into something big. Kyle Jarvis’ three-wicket burst in the middle rocked Bangladesh’s middle-order as the hosts slumped to 139-6.
Kayes, however, was going strong at the other hand and he found excellent support from Mohammad Saifuddin who chipped in with a crucial half-century down the order.
The pair added 127 runs between them for the eighth wicket before Kayes became Jarvis’ fourth victim of the day. The left-hander had collected 144 runs in 140 deliveries before his departure with the help of 13 boundaries and six sixes.
Zimbabwe openers Hamilton Masakadza and Cephas Zhuwao put on a 48-run stand for the first wicket before the former was run-out by Kayes.
Spinners Mehidy Hasan and Nazmul Islam kept a tight lid on things and shared five wickets between themselves to derail Zimbabwe’s chase.
Sean Williams waged a lone battle with a fighting half-century while Jarvis chipped in with 37 lower-order runs but the game had already slipped away from the visitors’ grasp by then as the hosts took a 1-0 lead in the three-match series.
Bangladesh: 271-8 (50 overs)
Imrul Kayes – 144 (140)
Mohammad Saifuddin – 50 (69)
Kyle Jarvis – 4/37
Zimbabwe: 243-9 (50 overs)
Sean Williams – 50no (58)
Mehidy Hasan – 3/46
Know more about Sport360 Application