Jofra Archer and Joe Root took three wickets apiece as Afghanistan slumped to 160 all out in a World Cup warm-up match at the Oval on Monday.
England, fresh from their 12-run defeat by world champions Australia in their previous warm-up fixture, were too strong in the field for rank outsiders Afghanistan in south London.
Fast bowler Archer, in what is tournament hosts England’s last match before they open the World Cup against South Africa at the Oval on Thursday, struck twice with the new ball before ending some late resistance from Mohammad Nabi.
Afghanistan were in danger of being dismissed for under 100 before Nabi, with 44, helped the last two wickets add 68 runs.
Archer dismissed Hazratullah and Rahmat Shah in a brisk new-ball spell.
Meanwhile opener Noor Ali saw scrapped his way to 30 before he played on to Ben Stokes.
Hashmatullah could not get going and that prompted Asghar Afghan to attack the occasional off-spin of Test captain Root.
But, having missed out on a first-ball full toss, Asghar tried to drive Root over the top but found Jason Roy in the deep instead.
Afghanistan lost their next four wickets in a mere seven deliveries, Hashmatullah and Najibullah Zadran carelessly run out, Gulbadin Naib holing out to Moeen Ali and Rashid Khan steering Root to slip for a golden duck.
SCORES IN BRIEF
Afghanistan: 160 all out in 38.4 overs (Nabi 44, Zadran 30; Root 3-22, Archer 3-32)
England: 161 for 1 in 17.9 overs (Roy 89 not out, Bairstow 39, Root 29 not out; Nabi 1-34)
Result: England won by 9 wickets.