Tamim Iqbal and Mahmudullah plundered the England bowling to lead Bangladesh to 330 for eight at close on the opening day of the second Test on Saturday.
Off-spinners Graeme Swann and James Tredwell shared five wickets between them to restore some parity as the tourists recovered from the early onslaught of Tamim, who had given them a storming start with 85 off 71 balls in the morning session.
Tamim celebrated his 21st birthday with fireworks, attacking every England bowler before debutant off-spinner Tredwell had him caught by wicketkeeper Matt Prior.
The left-handed opener made his intentions clear when he got off the mark with a boundary off the first ball of the innings and completed his fifty in just 34 deliveries with three successive fours off Swann.
He blasted the next ball for a six to take 20 runs from what was Swann's third over in the game as Bangladesh made the most of favourable bating conditions
Tamim, who was dropped by Paul Collingwood off Tim Bresnan on 11 and by skipper Alastair Cook at mid on off Stuart Broad on 36, clubbed 13 fours and a six in his sixth Test fifty.
Broad ended a 53-run opening stand between Tamim and Imrul Kayes, with Steven Finn taking a fine diving catch to dismiss the latter for 12, but Bangladesh still raced to 95 runs in the first hour.
After Tredwell ended Tamim's 66-run second wicket stand with Zunaed Siddique, Swann showed he had recovered from his earlier battering by trapping debutant Jahirul Islam lbw for a duck.
Swann later dismissed Zunaed lbw for 39 to give England their first success in the post-lunch session.
Finn claimed the wicket of Mahmudullah in the first ball of his second spell with Collingwood taking an easy catch at backward point.
Mahmudullah was dismissed for 59 after sharing a fifth-wicket stand of 59 with skipper Shakib Al Hasan.
Shakib fell one run short of his fifty when he was trapped lbw by Tredwell.
Vice-captain Mushfiqur Rahim took charge after Shakib's departure and hit some beautiful shots before Bresnan had him caught behind for 30.
Swann picked up his third wicket of the day by trapping Abdur Razzak (three). Naeem Islam (33 not out) and Shafiul Islam (eight not out) were at the crease at the close.
England lead the two-match series 1-0.
Bangladesh first innings
T. Iqbal c Prior b Tredwell 85
I Kayes b Finn b Broad 12
Z. Siddique lbw b Swann 39
J. Islam lbw b Swann 0
Mahmudullah c Collingwood b Finn 59
S. Hasan lbw b Tredwell 49
M. Rahim c Prior b Bresnan 30
N. Islam not out 33
A. Razzak lbw b Swann 3
S. Islam not out 8
Extras (b-1 lb-10 nb-1) 12
Total (eight wickets; 94 overs) 330
Fall of wicket: 1-53 2-119 3-122 4-167 5-226 6-254 7-301 8-314
Bowling: Broad 14-4-48-1, Bresnan 13-4-40-1, Swann 30-4-94-3, Finn 7-2-44-1 (nb-1) Tredwell 29-5-85-2, Collingwood 1-0-8-0