After failing thrice earlier, the stars were on England's side this time which made the impossible possible.
With England and New Zealand in the final, one of them will get their hands on the coveted trophy to the first time.
It has been an amazing game of cricket over two days - full of drama. And in the end, it was New Zealand who had last laugh.
South Africa spoiled Australia's party in the end.
Mathews' ton went in vain in the end.
Despite registering a 94-run victory, Pakistan could get nowhere close to qualification.
Four dropped catches in the innings didn't help Afghanistan's cause.
In all likelihood, it will be Australia, India, England and New Zealand playing the semi-finals with Pakistan practically knocked out.
With this win, India has now qualified for the knockouts.
For the first time since 1992, England defeated India in a World Cup game.