The Super Six stage became a genuine possibility for England after Pakistan succumbed to new bowling sensation James Anderson in Cape Town.
Anderson revelled under lights to take four for 29 as England's fellow Group A hopefuls were bundled out in the 31st over.
His sparkling display stole the limelight from Pakistan speed ace Shoaib Akhtar, who earlier confirmed his status as the world's fastest bowler with a 100mph delivery.
Nasser Hussain's men looked to be defending a moderate total after winning the toss and batting first on a good Newlands pitch.
Despite half-centuries from Michael Vaughan and Paul Collingwood, England were guilty of an indifferent display in conditions conducive to run-scoring.
Marcus Trescothick set the tone early, again searching indecisively outside off-stump to be caught behind.
Nick Knight and Nasser Hussain also fell cheaply as England descended to 45 for three.
An assured 52 from Vaughan got the innings back on course, but when he fell to the expensive Shoaib a healthy total still looked in doubt.
It was left to Collingwood, whose late heroics yielded an unbeaten 66 off 73 balls, to ensure England had a decent score to defend.
And once Academy pupil Anderson started his masterclass in swing bowling they were never in danger of defeat.
Anderson, who took five wickets in England's first two matches, looked on as Andy Caddick struck first to remove Shahid Afridi for six.
But thereafter the show was all his, snatching the initiative from Pakistan in his second over with two wickets in two balls.
Inzamam-ul-Haq's wretched run reached new depths when he edged to Alec Stewart first ball, and Anderson was on a hat-trick when he bowled Yousuf Youhana with an outswinging yorker direct from the top drawer.
It was Andrew Flintoff's turn next as Younis Khan skied into the gloves of a diving Stewart, but focus soon reverted to Anderson as he took another two wickets in the 18th over.
His movement had bamboozled opener Saeed Anwar in early exchanges and Anderson finally got his man, trapped leg before for 29.
Pakistan were reeling on 59 for six when Rashid Latif guided an outside edge into Stewart's waiting hands.
Not for the first time, Hussain chose to give Anderson his 10 overs in succession.
It was a task the 20-year-old, in just his 12th one-day international, took in his stride and he maintained his line and length to the end.
Pakistan were a beaten side when Anderson was bowled out of the attack, clearing the path for Craig White to mop up the tail and return figures of three for 33.
Number 11 Shoaib blazed late on, taking 21 runs from one White over, but nothing could disguise a poor showing from one of the pre-tournament favourites.
England, though, head to their clash with India on Wednesday believing anything is possible.
England: Marcus Trescothick, Nick Knight, Michael Vaughan, Nasser Hussain (captain), Paul Collingwood, Alec Stewart, Andrew Flintoff, Craig White, Ashley Giles, Andrew Caddick, James Anderson.
Pakistan: Saeed Anwar, Shahid Afridi, Younis Khan, Inzamam-ul-Haq, Yousuf Youhana, Abdul Razzaq, Rashid Latif, Wasim Akram, Waqar Younis (captain), Saqlain Mushtaq, Shoaib Akhtar.
Umpires: BG Jerling, RE Koertzen.
RELATED INTERNET LINKS
Five Live Sports Extra
The BBC is not responsible for the content of external internet sites
^ Back to top | BBC Sport Home | BBCi Homepage | Feedback | ©