Rashid Khan claimed 6-49 and completed his maiden 10-wicket haul as Afghanistan defied rain and fading light to beat Bangladesh by a massive 224 runs in the one-off Test in Chittagong on Monday.
Rashid grabbed three of the remaining four wickets as Afghanistan took 17.2 overs on the fifth day to bowl out Bangladesh for 173 in the second innings after the hosts resumed with 136-6.
The play started on the fifth day at 1:00pm local time after rain wiped out the first session.
It returned in abundance after the visitors bowled just 2.1 overs without being able to inflict any damage on the home side.
Play resumed again at 4:20pm and Afghanistan were given 18.3 overs to bowl out Bangladesh, which was chasing a target of 398 runs.
Left-arm chinaman Zahir Khan dismissed overnight batsman Shakib Al Hasan in the first ball after the resumption, dealing a serious blow to the home side.
Afsar Zazai took a sharp catch behind the stump to remove Shakib for 44 and then Rashid did the rest.
Rashid trapped Mehidy Hasan dead in front for 12 and dismissed Taijul Islam in the next over for a duck to leave the last wicket pair of Soumya Sarkar and Nayeem Hasan to survive 7.3 overs.
Soumya was the last man dismissed when he flicked Rashid to Ibrahim Zadran at short leg with 20 balls left in the game as Afghanistan completed their second win after playing just three Tests.
Rashid, who made his debut as the youngest-ever Test captain in this match, finished the game with 11 wickets which included a first innings haul of 5-54.
The Afghan skipper, who also made 51 and 24 runs in two innings, was named man of the match.
"We won this game against a side like Bangladesh," Rashid said after the match.
"We are new to this format, so credit goes to the coaching staff for their support. Everyone applied themselves and stuck to their plans.
"The four-day structure back home is helping the players. We had the best preparation for this game and it was challenging for the batsmen." Bangladesh skipper Shakib was full of praise for Afghanistan.
"They deserve this victory. After playing for 20 years, we can't say it's a build-up process," he said.
"It's been a while since we played our last Test match, but Afghanistan kept the pressure on us, credit goes to their hard work."
Afghanistan made 342 runs in the first innings, owing to 102 runs of Rahmat Shah, the first-ever Test century for the country before they bowled out Bangladesh for 205 runs to gain a massive 137-run lead.
Afghanistan rode on teenage debutant Ibrahim Zadran's 87 to score 260 runs in the second innings, setting a daunting target of nearly 400 runs for Bangladesh.