Tournament favourites Brazil were knocked out of the World Cup on penalties as Croatia kept their nerve to edge through to the semi-finals.
Croatia, beaten finalists four years ago, scored with all four of their spot-kicks as Rodrygo – taking his team’s first kick – was denied by the brilliant Dominik Livakovic and Marquinhos’ crucial fourth effort struck the post.
As the ball hit the foot of the woodwork and bounced away, Croatia’s team sprinted to celebrate with their goalkeeper, while the Brazil players hit the turf, knowing their dream of a sixth crown had come to an end.
After an engrossing 90 minutes, Tite’s men thought they had won it in extra time when Neymar scored a thumping effort to equal Brazil’s ‘official’ men’s goalscoring record.
But substitute Bruno Petkovic had other ideas, stroking in a 116th-minute equaliser with Croatia’s first shot on target in the match to take the game to the nerve-shredding shootout.
And it was the European side who emerged victorious once more, having done so by the same method against Japan in the last 16, to set up a semi-final meeting with the Netherlands or Argentina on Tuesday.
Croatia show endurance to stun favourites
This wasn’t in the script.
Brazil were supposed to dance through to the last four in their quest for another star on their shirt but their hopes were ended in the cruellest fashion.
Neymar, who scored his 77th international goal to equal Pele’s official mark, now shares a record recognised by Fifa but not the national team – as they also counted goals netted by their three-time World Cup winner in friendlies against club sides.
And the Paris St-Germain forward will not get the opportunity to surpass the legend at this tournament, as Brazil suffered woe against a European nation once again. Since beating Germany in the 2002 final, they have been knocked out of five successive World Cups by a team from Europe.
This was supposed to be Neymar’s moment, standing up for his side when they needed him most with a clinical finish to complete a slick team move, but he was left in tears after the shootout.
He should have won it for them in normal time but neither he nor Lucas Paqueta could find a way past the inspired Livakovic, who made a total of 11 saves, the most by a goalkeeper at this tournament.
Though most were routine, Livakovic had to be in the right place at the right time to make the stop and he certainly was with Brazil’s first penalty, diving the right way to push out Rodrygo’s strike.
Croatia are a well-organised and stubborn outfit, but they did not managed a shot on target until four minutes from the end of extra time, as Petkovic’s side-footer beat Alisson.
Zlatko Dalic’s men displayed their mental fortitude and powers of endurance once more to go through – as eight of their past nine knockout matches at major tournaments have now ticked into extra time.
Once this one went to penalties, Nikola Vlasic, Lovro Majer, the evergreen Luka Modric and Mislav Orsic were all successful with their efforts, while Neymar was not among the first four Brazilians penalty-takers, presumably left to take a decisive fifth which never came.
The second successive shootout success for Croatia sends them through to their third World Cup semi-final.

Player of the match
ModricLuka Modric
Croatia
-
Squad number10Player nameModric
Average rating8.67
-
Squad number1Player nameLivakovic
Average rating8.61
-
Squad number22Player nameJuranovic
Average rating8.42
-
Squad number20Player nameGvardiol
Average rating8.18
-
Squad number16Player namePetkovic
Average rating7.99
-
Squad number8Player nameKovacic
Average rating7.95
-
Squad number4Player namePerisic
Average rating7.82
-
Squad number6Player nameLovren
Average rating7.78
-
Squad number11Player nameBrozovic
Average rating7.75
-
Squad number18Player nameOrsic
Average rating7.71
-
Squad number7Player nameMajer
Average rating7.69
-
Squad number13Player nameVlasic
Average rating7.64
-
Squad number9Player nameKramaric
Average rating7.62
-
Squad number17Player nameBudimir
Average rating7.59
-
Squad number15Player namePasalic
Average rating7.57
-
Squad number19Player nameSosa
Average rating7.54
Brazil
-
Squad number5Player nameCasemiro
Average rating5.72
-
Squad number3Player nameThiago Silva
Average rating5.69
-
Squad number10Player nameNeymar
Average rating5.65
-
Squad number1Player nameAlisson
Average rating5.48
-
Squad number20Player nameVinícius Júnior
Average rating5.23
-
Squad number7Player nameLucas Paquetá
Average rating5.22
-
Squad number9Player nameRicharlison
Average rating5.17
-
Squad number19Player nameAntony
Average rating5.10
-
Squad number14Player nameÉder Militão
Average rating5.06
-
Squad number2Player nameDanilo
Average rating4.88
-
Squad number11Player nameRaphinha
Average rating4.82
-
Squad number4Player nameMarquinhos
Average rating4.81
-
Squad number21Player nameRodrygo
Average rating4.51
-
Squad number25Player namePedro
Average rating4.45
-
Squad number6Player nameAlex Sandro
Average rating4.25
-
Squad number8Player nameFred
Average rating4.22
Line-ups
Croatia
Formation 4-3-3
- 1Livakovic
- 22Juranovic
- 6Lovren
- 20Gvardiol
- 19SosaSubstituted forBudimirat 110′minutes
- 10Modric
- 11BrozovicBooked at 31minsSubstituted forOrsicat 114′minutes
- 8KovacicSubstituted forMajerat 105′minutes
- 15PasalicSubstituted forVlasicat 72′minutes
- 9KramaricSubstituted forPetkovicat 72′minutesBooked at 117mins
- 4Perisic
Substitutes
- 2Stanisic
- 3Barisic
- 5Erlic
- 7Majer
- 12Grbic
- 13Vlasic
- 14Livaja
- 16Petkovic
- 17Budimir
- 18Orsic
- 21Vida
- 23Ivusic
- 24Sutalo
- 25Sucic
- 26Jakic
Brazil
Formation 4-2-3-1
- 1Alisson
- 14MilitãoSubstituted forAlex Sandroat 105′minutes
- 4MarquinhosBooked at 77mins
- 3Thiago Silva
- 2DaniloBooked at 25mins
- 7Lucas PaquetáSubstituted forFredat 105′minutes
- 5CasemiroBooked at 68mins
- 11RaphinhaSubstituted forAntonyat 56′minutes
- 10Neymar
- 20Vinícius JúniorSubstituted forRodrygoat 64′minutes
- 9RicharlisonSubstituted forPedroat 84′minutes
Substitutes
- 6Alex Sandro
- 8Fred
- 12Weverton
- 13Alves da Silva
- 15Fabinho
- 17Bruno Guimarães
- 19Antony
- 21Rodrygo
- 22Éverton Ribeiro
- 23Ederson
- 24Bremer
- 25Pedro
- 26Martinelli
- Referee:
- Michael Oliver
- Attendance:
- 43,893
Match Stats
Live Text
Match ends, Croatia 1(4), Brazil 1(2).