Debutant Abu Hider proved the decision of Afghanistan to bat first wrong by eking out two early wickets.
All-rounder Shakib-al-Hasan bowled superbly to bag 4 wickets keeping his nation in the game.
Hashmatullah Shahidi though hit a fluent 58 to keep Afghan hopes alive.
Birthday boy Rashid Khan brought Afghanistan back in the game by hitting a swift 57* of his own.
In reply, Bangladesh could never quite recover from the early blows dealt by the Afghan bowlers.
Gulbadin Naib bagged two wickets.
Rashid returned to pick two wickets along with scalps from Mujeeb and Rahmat Shah to seal a massive win.