After a valiant 94, Jonathan Trott, the last man to fall, was caught behind off a slower ball from Bangladesh seamer Shafiul Islam to send the Bangladesh team wild with delight.
"Trott was aiming for a big shot so I thought if I aim for a slower one he could miss it," an embarrassed looking Shafiul said.
The drama was intensified when Ian Bell [ Images ], who scored an unbeaten 84 to take England to victory in the opening match, hobbled on to a hero's welcome as the last batsman after fracturing a bone in his left foot while fielding.
"Hats off to him, we really appreciate this kind of effort," added Shafiul.
The win was also Bangladesh's first international victory of the year, adding to captain Mashrafe Mortaza's [ Images ] delight. "I tell the boys to stay positive whatever happens," he said.
Bangladesh's innings was headed by Imrul Kayes with 76, although once again the side faltered when nicely set at 148 for two shortly before the 30-over mark and hobbled to 236 for seven.
Jahurul Islam gave able support with 40 while Mortaza added a late 22 to his side's meagre total.
However it still proved too much for England, who never really built up any momentum.
The Twenty20 world champions were not helped by Bell's injury in the Bangladesh innings, and only captain Andrew Strauss [ Images ] (33) and fellow opener Craig Kieswetter (20) got a start.
Stuart Broad [ Images ] opened his shoulders at the end for a dashing 21 but paid the price for being too daring when he was caught in the gully.
Strauss had no excuses and preferred to laud the efforts of the underdogs. "I think they're very hungry to prove their place," he said.
Tamim Iqbal c Kieswetter b Shahzad 18
Imrul Kayes c Collingwood b Shahzad 76
Junaid Siddique c Kieswetter b Broad 21
Jahurul Islam c Kieswetter b Shahzad 40
Shakib Al Hasan b Collingwood 1
Mohammad Ashraful [ Images ] run out 14
Mahmudullah not out 24
Mashrafe Mortaza run out 22
Abdur Razzak not out 1
Extras (nb3, lb4, w12) 19
Total (seven wickets; 50 overs) 236
Fall of wickets: 1-19 2-65 3-148 4-149 5-174 6-196 7-233
Bowling: Anderson 9-0-46-0, Shahzad 10-0-41-3, Broad 10-0-60-1, Wright 6-0-30-0, Yardy 10-0-39-0, Collingwood 5-0-16-1.
A. Strauss c Jahurul b Hossain 33
C. Kieswetter c Jahurul b Hossain 20
J. Trott c Jahurul b Islam 94
P. Collingwood lbw b Razzak 10
E. Morgan lbw b Razzak 1
M. Yardy b Shakib 10
L. Wright c Siddique b Islam 15
A. Shahzad b Shakib 5
S. Broad c Shakib b Mortaza 21
J. Anderson c and b Mortaza 2
I. Bell not out 0
Extras (lb-7, w-13) 20
Total (all out; 49.3 overs) 231
Fall of wickets: 1-49, 2-58, 3-86, 4-90, 5-115, 6-146, 7-166, 8-209, 9-227.
Bowling: Mashrafe Mortaza 10-0-42-2, Abdur Razzak 10-0-43-2, Shafiul Islam 9.3-3-38-2, Rubel Hossain 9-0-52-2, Shakib Al Hasan 10-0-40-2, Mohammad Ashraful 1-0-9-0