England were stymied and stifled by a stubborn Scotland side in a 0-0 draw which puts them level on four points with group leaders Czech Republic, who they host on Tuesday.
Lacklustre England have been denied an early ticket into the Euro 2020 last 16 as Scotland have held their historic rivals to a goalless draw while World Cup finalists Croatia face an uphill task to progress.
Elsewhere, Sweden took a step towards the next round with a 1-0 win over Slovakia and Denmark midfielder Christian Eriksen was released from hospital, six days after suffering a cardiac arrest.
England took on Scotland at Wembley for the 100th time in a competitive fixture but for just the second time at a major tournament, 25 years after they met at Euro 96.
Despite having just 2,500 tickets in the crowd of 22,500 limited by coronavirus restrictions, Scottish fans made their presence felt in a sizzling atmosphere in the pouring rain.
England, who beat Croatia 1-0 in their opening match of the tournament, knew victory against their fierce foes would seal their progress with a match to spare.
But Scotland dug deep and gave Gareth Southgate's side some scares as they sealed a deserved 0-0 draw.
The home side started brightly, with John Stones hitting the post with a header, but lacked fluency and an attacking edge and captain Harry Kane was again peripheral.
Lyndon Dykes saw the visitors' best effort of an impressive second half cleared off the line by Reece James.
"It was a frustrating night, we know we can play better," England boss Gareth Southgate told ITV. "Got to give Scotland credit, they defended valiantly and played well.
"We didn't do enough to win the game but after that the thing we have to worry about in tournament football is we had to make sure we didn't lose it."
Arch rivals England and Scotland have drawn at the European Championship at Wembley. Our correspondent Lance Santos has more pic.twitter.com/LU7zrsPwso— TRT World Now (@TRTWorldNow) June 18, 2021
Scotland manager Steve Clarke said his team had been "unfairly criticised" after their 2-0 defeat against the Czech Republic on Monday.
"We had chances to win, England had moments as well," he said. "Looking at this you wouldn't have known which is the favourite, which is a credit to us.
"The most pleasing thing was we played when we had the ball and created a number of chances."
Earlier, Croatia picked up their first point with a 1-1 draw against the Czech Republic in Glasgow but captain Luka Modric was disappointed with his team's showing.
Czech striker Patrik Schick's first-half penalty gave him the early lead in the race for the Golden Boot with his third goal of the tournament, but Ivan Perisic's excellent 47th-minute strike earned Croatia a draw.
However, the 2018 World Cup runners-up will have to beat Scotland on Tuesday and hope other results go their way if they are to reach the knockout rounds.
"There is a bitter taste after this match, as we didn't win, said Modric. "We entered the match really disorganised.
"We looked better in the second half. We scored that goal and we could have scored even more, but unfortunately we didn't win. Now, we have to defeat Scotland to go through."
The Czechs and England, who meet on Tuesday, both have four points in Group D, with Scotland and Croatia on one apiece.
READ MORE: Netherlands beat Austria to reach Euro 2020 knockouts
Goalless at Wembley. Fair result? 🤔#EURO2020— UEFA EURO 2020 (@EURO2020) June 18, 2021
Slovakia blew their chance to qualify for the last 16 with a match to spare after losing to Sweden in Saint Petersburg and conceding top spot in Group E to their opponents.
The Swedes were heavily criticised for their ultra-defensive approach in their opening match, a goalless draw with Spain, but Janne Andersson's team were far more forward-looking on Friday.
Emil Forsberg's penalty 13 minutes from the end earned Sweden a win which gives them four points, one more than second-placed Slovakia.
Spain sit third in the group with a single point ahead of their game against Poland in Seville on Saturday, boosted by the return of captain Sergio Busquets to Luis Enrique's squad after testing negative for Covid-19.
Denmark's Eriksen was released from hospital following a "successful operation" nearly a week after suffering a cardiac arrest against Finland.
Doctors said Thursday that Eriksen, 29, would have a heart defibrillator implanted to regulate his heart rhythm, casting doubt over whether he will be able to play again.
"The operation went well, and I am doing well under the circumstances," Eriksen said in a statement from the Danish Football Union.
"Thank you for the massive number of greetings – it has been incredible to see and feel."
READ MORE: Wales stun Turkey in Euro 2020 with 2-0 win