Stuart Broad grabbed a five-wicket haul as England doused late resistance from big-hitting Rizwan Cheema to carve out a narrow 16-run victory over Canada in a World Cup warm-up game on Wednesday.
Rizwan threatened to take the game away with his explosive 70-ball 93 before Broad struck to remove the batsman and restrict Canada to 227 off 46.1 overs in reply to England's 243 all out at the Fatullah stadium in Dhaka.
The paceman, making a surprise comeback after a stomach injury, finished with 5-37 to add to the efforts of Matt Prior (78) and Jonathan Trott (57) with the bat after England won the toss and elected to bat.
It was paceman Ajmal Shahzad (2-44) who started the rot when he dismissed the dangerous John Davison for one. Davison had smashed 111 off 67 balls, then a World Cup record, in a losing effort against West Indies in 2003.
Broad, key to England's chances at the World Cup, then sent back Nitish Kumar and captain Ashish Bagai off successive overs before ending a valiant 44-run knock by Khurram Chohan lower down the order.
Chohan showed his prowess with the ball as well, sharing six wickets with Harvir Baidwan to dent England's progress.
Chohan, a Pakistani import in the eclectic Canadian side, removed Andrew Strauss (one) and Kevin Pietersen before accounting for Ian Bell (eight) to return figures of 3-34 off nine overs.
Pietersen, a surprise promotion to the opener's slot, inside edged on to his leg-stump after making 24 off 28 balls, including three fours and a six.
Trott arrested the slide with his cautious 81-ball knock and found an able partner in Prior, who hit four fours and a six.
Prior added 54 with Trott, who mistimed a sweep against off-spinner Davison, and then 51 with Broad after his Sussex team-mates Mike Yardy and Luke Wright both fell cheaply to Henry Osinde.
Prior was eventually bowled by Baidwan (3-50).
England play their second warm-up against Pakistan on Friday before starting their World Cup campaign against the Netherlands in Nagpur on February 22.