England rescued a 22-run victory on the final morning of an intriguing first Test in Chittagong as man of the match Ben Stokes took the final two wickets.
Bangladesh began the day needing 33 to beat England for the first time in a Test match, with two wickets standing.
They calmly added 10 runs before Taijul Islam was given out lbw after a review.
Two balls later Stokes removed last man Shafiul Islam, who was given out lbw and failed to overturn it on review as Bangladesh were dismissed for 263.
Going into the game Bangladesh had won only seven of their 93 Tests and have beaten only Zimbabwe and an under-strength West Indies.