Jason Roy hit 153 as England got their campaign back on track with a 106-run win over Bangladesh in Cardiff.
Roy's knock took England to an imposing 386-6, leaving Bangladesh needing to surpass Ireland's 329-7 against England in 2011, the highest score by any team batting second to win a World Cup match.
Despite Shakib Al Hasan's 121, Bangladesh were never in the hunt and were eventually dismissed for 280.
Bangladesh's chase got off to a bad start when Jofra Archer (3-29) dismissed Soumya Sarkar for two with a ball that clipped the top of the left-hander's off stump and flew across the boundary over the head of the wicketkeeper.
But Shakib anchored the innings, on his way to a 95-ball century that included nine fours and a six.
Shakib put on 106 with Mushifqur Rahim (44), a partnership that ended when Roy held a good catch at point.
And 169-3 soon became 170-4 when Mohammad Mithun fell for a duck after edging Adil Rashid to Jonny Bairstow, who took the gloves in place of injured Jos Buttler.
Shakib was eventually yorked by Ben Stokes to leave Bangladesh on the brink of defeat.
Stokes finished with the figures of 3-23.
Earlier, Mashrafe Mortaza put England in on a green-tinged pitch, but Roy and Bairstow (51) seized the initiative during a rapid first-wicket stand of 128.
Roy was finally caught by Mashrafe off Mehidy Hasan Miraz, holing out after hitting three towering sixes in a row off the spinner.
Roy fell just short of Andrew Strauss's England World Cup record of 158 against India in Bangalore in 2011.
Bangladesh next play Sri Lanka at Bristol on Tuesday, while England will face the West Indies at the Oval on Friday.