Luka Modric's team fell behind in just the fifth minute to Kieran Trippier's superb free-kick but hit back through Ivan Perisic and Mandzukic to win a tense contest 2-1 in front of 78,000 spectators in the Luzhniki Stadium.
In beating Gareth Southgate's young team, Croatia -- a country of just four million people -- have surpassed the achievements of the heroes of 1998, who reached the semi-finals in France.
Croatia's players celebrated wildly in front of their supporters in Moscow while in Zagreb tens of thousands of fans poured onto the streets and squares, singing and waving red-white-and-blue flags.
Having led for over an hour, the defeat will be difficult for England to digest as their hopes of reaching a first World Cup final since 1966 were crushed, but their young team have won many admirers in Russia.
Croatia must recover quickly for Sunday's showpiece -- no easy feat after being taken to extra-time for a third consecutive match.--AFP