He said he's never been better prepared for a major tournament, so his performances are "a combination of hard work and luck."
Shakib was involved from the fifth over today, going to the crease at the fall of Bangladesh's first wicket.
He went on to post his sixth consecutive 40-plus score at the World Cup — he has two centuries — and he was the second-highest contributor to Bangladesh's total of 262-7 against Afghanistan after Mushfiqur Rahim's 83.
Taking wickets in three different spells, Shakib was the key contributor with the ball as Afghanistan was dismissed for 200, its seventh straight loss in the tournament.
Bangladesh moved to fifth place on the standings with seven points, just one behind top-ranked England and four behind tournament-leading New Zealand.
Afghanistan was doing OK in its run chase until Shakib was given the ball in the 11th over to introduce his left-arm orthodox spin.
The bowling change worked immediately, with Shakib having Rahmat Shah (24) caught at mid-wicket to end a 49-run opening stand.
Mosaddek Hossain had Hashmatullah Shahidi stumped by Mushfiqur to make it 79-2 in the 21st before Afghan skipper Gulbadin Naib and former captain Asghar Afghan combined in a bid to consolidate the innings.
Shakib struck twice in three balls in the 29th over, having Naib (47) caught at short cover and then bowling Mohammad Nabi (0). He returned to dismiss Afghan for 20 in the 33rd over in a five-over spell that netted three wickets for eight runs and virtually ended Afghanistan's chances of victory.
And he sealed the five-wicket haul in his last over when he had Najibullah Zadran stumped for 23 as Afghanistan's last four wickets fell for 12 runs, leaving Samiullah Shinwari stranded on 49 not out.
Afghanistan entered the game on a high after restricting India to 224-8 on the same pitch two days before and getting within 11 runs of what would have been one of the biggest upsets in the tournament's history. That prompted skipper Naib to field first after winning the toss and try to keep the chase as low as possible.
It didn't quite work out, leaving Afghanistan a target bigger than it has ever successfully chased against Bangladesh.
Mujeeb Ur Rahman took three wickets, including the key dismissal of Shakib in the middle, to return 3-39 from 10 overs and was the pick of Afghanistan's bowling attack.
Naib picked up 2-56 but star spinner Rashid Khan had another difficult day, with his 10 overs returning 0-52.
The Alternative Commentary Collective are podcasting their way through the World Cup. Known for their unconventional sports analysis and off-kilter banter, the ACC have come to ask the tough questions. Here's the latest episode of 'The Agenda':
WARNING: GRAPHIC CONTENT