Afghanistan 254 for 6 (Stanikzai 90*, Shenwari 81) beat Bangladesh 222 (Mominul 50, Nabi 3-44, Hassan 2-26) by 32 runs
Scorecard and ball-by-ball details

The indomitable spirit that has characterised Afghanistan's sharp rise in world cricket shone brightly in Fatullah. Playing in the Asia Cup for the first time, Afghanistan not only defeated Bangladesh, the Test-playing hosts, they almost managed to sneak out a bonus point too. Bangladesh, who took 28 matches to register their first-win against a major side, were left embarrassed by a younger cricketing nation playing only its fourth match against a major team.

The foundation of the historic win was laid by a stunning 164-run stand for the sixth wicket between Asghar Stanikzai and Samiullah Shenwari that lifted Afghanistan from 90 for 5 in the 27th over to a competitive 254. The Afghanistan bowlers then ensured they maintained the intensity and produced an all-round bowling performance to shock the hosts.

Stanikzai and Shenwari had come together at a stage when Bangladesh spinners were busy closing all escape doors, but they went through a careful rebuilding phase till the 40th over, before exploding in the last 10 to amass 107 runs - easily their best performance in the final overs. The stand was broken on the penultimate delivery of the innings when Shenwari was run-out for 81, but Stanikzai stayed unbeaten on 90 off 103 balls. Bangladesh, who had a firm grip on the proceedings for 80% of the innings, fell apart in the last 20%.

Rubel Hossain was smashed for 40 in his last four overs, Abdur Razzak and Arafat Sunny were whipped for 25 and 19 in their last two and Ziaur Rahman was taken for 16 as Stanikzai and Shenwari hit 12 fours and four sixes in the last 10 overs, beating the 88 they scored against Scotland in 2009.

Bangladesh's hopes of a quick turnaround through their batting were dashed almost as soon as the chase started. Stanikzai and Shenwari's energy had spilled over to the their bowling too. Shapoor Zadran generated enough pace in his first over to rattle the openers. He capped it off with a wicket off the fifth ball that cut Shamsur Rahman into half and sent his offstump cartwheeling. Bowling from the other end, Hamid Hassan surprised Anamul Haque with his pace and trapped the opener lbw. The storm that had hit Bangladesh in the first innings was showing no sign of abatement. The hosts were down to 1 for 2, and the control they had on the game after opting to bowl, was all but lost.

It was clear at the toss that Bangladesh, who were without three first-choice players, were going to put Afghanistan through a trial by spin as Mushfiqur responded to the slowness in the Fatullah pitch by including an additional spinner. Arafat Sunny, the left-arm orthodox bowler, was brought in to replace the injured Mashrafe and was the second spinner to bowl inside the first 10 overs.

Sunny removed the two batsmen who had been busy putting up a resistance since the fall of Mohammad Shahzad in the third over. Karim Sadiq lobbed a leading edge back to Sunny in his second over. In his next over, Sunny dismissed Najibullah Zadran with one that slipped under the massive gap between the batsman's bat and pad. Afghanistan slipped to 43 for 3 in the 14th over.

Afghanistan showed signs of changed intent immediately after the first drinks break but the urgency cost Nawroz Mangal his wicket as he was run-out. The spin ploy seemed to have yielded the desired result as Afghanistan were reduced to 90 for 5.

But Shenwari, after a period of careful rebuilding, announced the change in momentum with consecutive boundaries off the last two balls of the 40th over, off Razzak. He reached his half-century, in 54 balls, with a slice to the point boundary and followed it up with a reverse-sweep. The best of his 11 hits to the boundary was the one that cleared it. Razzak, bowling from over the wicket, had seen Shenwari step out and bowled it wide outside off, but the batsman stretched out and connected beautifully to lift the ball to the sightscreen.

Then Stanikzai, who had been the quieter of the two - he hit his first boundary off the 74th ball - joined in smashing a six and a four in the 44th over bowled by Rubel. The first of the two shots brought him his half-century. He also provided the perfect finish, hitting another set of a six and a four in the last over. The third delivery of that over was whacked over midwicket and the fourth, a wide full-toss, was carved to deep point. By the time he finished, Stanikzai had hit six fours and three sixes to reach his career-best score.

The confidence that had surged in the Afghanistan innings oozed through their shots as what had been a slow pitch hardly made a difference. Length deliveries frequently disappeared into gaps at deep midwicket or covers and spinners' flight or flatter trajectory made no impact. Bangladesh's fielding too buckled under pressure as couple of easy catches were dropped while the ground fielding allowed extra runs. The beating that the bowlers' figures took was sharply in contrast with the way they had started the day. Adding to the hosts' woes, Sohag Gazi split his right-hand webbing after bowling only three deliveries.

Bangladesh's chances of revival rested on their captain, Mushfiqur, and Mominul Haque. The two set about scripting a recovery in much the same fashion as the protagonists of Afghanistan's innings: the defensive shots were interspersed with attractive hits to the boundary. Mominul, particularly, made sure any loose delivery didn't go unpunished, pulling and driving every time an opportunity presented. He reached his half-century in 71 deliveries.

Afghanistan captain Mohammad Nabi broke the 68-run stand when he beat Mushfiqur in flight and had him lbw. Mominul left 19 runs later, yorked by a Shenwari delivery. Bangladesh could have been in further trouble had Afghanistan grabbed the numerous chances Nasir Hossain offered. He was dropped four times - on 1, 4, 14 and 31 - before eventually getting caught for 41 by Shenwari, who had dropped him twice. By that time, he had added 73 for the fifth wicket. Although the required run rate had climbed to over eight an over, the partnership kept the hosts' hopes alive.

That though changed soon as Bangladesh lost four wickets for four runs, three of them in three balls spread across two overs. A hard-hitting cameo from Zia-ur-Rahman, who hit 42 off 22 deliveries, avoided Bangladesh ignominy of handing the opponents a bonus point, but it was to be a mere flutter.

Devashish Fuloria is a sub-editor at ESPNcricinfo