Spin sensation Rashid Khan starred with bat and ball on Friday as Afghanistan took command in the one-off Test against Bangladesh.
Rashid hit 51 off 61 balls to take Afghanistan to 342 in their first innings and then claimed 4-47 to leave Bangladesh struggling at 194 for eight at stumps on the second day.
Mominul Haque scored the only half-century for Bangladesh, 52 off 71 balls, while Mosaddek Hossain remained unbeaten on 44 to spare some blushes for the home side against the Test minnows.
Bangladesh lost a wicket in the very first over of their innings when Yamin Ahmadzai dismissed opener Shadman Islam for nought but Soumya Sarkar and Liton Das steadied the innings with a 49-run stand.
Mohammad Nabi removed Soumya leg-before for 17 before Rashid introduced himself in the attack with immediate impact as he bowled Liton for 33.
Rashid unleashed further destruction in his fifth over, trapping Shakib Al Hasan leg before for 11 and removing Mushfiqur Rahim for a duck two balls later as Bangladesh were reduced to 88-5 at tea.
They did no better after play resumed in the final session as Rashid, who made his debut as the youngest ever Test captain in this Test, bowled Mahmudullah Riyad for seven and left others with little clue against his leg-spin.
Mominul launched a counter-attack to bring his fifty off 69 balls but paid the price for his aggression as he gave a catch to Asghar Afghan at mid-off off Mohammad Nabi, who finished the day with 2-53.
Mosaddek survived the day with tail-ender Taijul Islam, 14 not out, but Bangladesh still face a mountain to climb, trailing Afghanistan by 148 runs in the first innings with just two wickets in hand.
Rashid earlier led Afghanistan's batting charge with his maiden Test fifty after they lost early wickets, having resumed the second day's play at 271-5.
Former skipper Asghar, who was unbeaten on 88 overnight, managed to add just four runs to his score before gifting his wicket to left-arm spinner Taijul, just eight runs short of what would have been his first Test century.
Taijul then bowled the other overnight batsman Afsar Zazai for 41 but Rashid, making his debut as the youngest-ever Test captain, launched a counterattack.
Shakib struck back to remove tail-enders Qais Ahmad and Yamin Ahmadzai for nine and zero respectively but Rashid fought on, bringing up his 50 in as many balls.
Off-spinner Mehidy Hasan took a sharp catch off his own bowling to stop Rashid's onslaught and end Afghanistan's innings.
Taijul finished with 4-116 for Bangladesh while Shakib and off-spinner Nayeem Hasan claimed two wickets each.