Lower-order batsman Mehidy Hasan Miraz conjured an unbeaten 38 in a low-scoring thriller as Bangladesh stunned India by one wicket in the opening one-day international in Mirpur.
Chasing 187 for victory, the home side slumped to 136-9 in the 40th over with India looking in command at the Shere Bangla National Stadium.
Mehidy refused to throw in the towel, however, and combined with Mustafizur Rahman in a 51-run partnership, Bangladesh's highest for the 10th wicket, to secure a memorable victory with four overs to spare.
An upset looked on the cards after Bangladesh, having elected to field, bundled out India for 186 in 41.2 overs.
Shakib Al Hasan (5-36) wrecked India's top order, dismissing Rohit Sharma (26) and Virat Kohli (nine) in the same over.
KL Rahul saved India's blushes with 73 off 70 balls before falling to Ebadot Hossain (4-47) who also claimed the important wicket of Shreyas Iyer (24).
Deepak Chahar gave India the perfect start by dismissing Najmul Hossain with the first delivery of the Bangladesh innings but skipper Litton Das (41) and Shakib (29) kept the hosts on course.
They suffered a mid-innings collapse but Mehidy, dropped by Rahul on 15, punished India for their sloppy fielding and general indiscipline in bowling which resulted in 17 extras.
Mirpur also hosts the second ODI of the three-match series on Wednesday.


Slow start, strong finish as Alcaraz makes US Open third round
Dominant Sabalenka sweeps past Iatcenko to reach US Open third round
F1 champion Norris co-founds single-seater junior team
Medvedev, Pegula, Shelton advance as rain disrupts US Open schedule
All-Star Sumo Competition to take place in Abu Dhabi for first time
