England and Belgium racked up the goals on the road but Spain were toppled from top spot in their group by a Sweden comeback.
Article top media content
England and Belgium strengthened their positions at the top of their sections on Thursday but it was a different story for Spain, who relinquished first place and their 66-game unbeaten run in World Cup qualifiers with defeat in Sweden.
On Wednesday, Cristiano Ronaldo struck two late goals – the first making him international football's all-time leading scorer – to turn defeat into victory for Portugal. Elsewhere, Denmark made it four wins from four but France, Turkey and the Netherlands were all held.
UEFA.com wraps up the action from both nights of Matchday 4.
All Thursday's matches
Group B: Georgia 0-1 Kosovo, Sweden 2-1 Spain
Group C: Italy 1-1 Bulgaria, Lithuania 1-4 Northern Ireland
Group E: Czech Republic 1-0 Belarus, Estonia 2-5 Belgium
Group I: Andorra 2-0 San Marino, Hungary 0-4 England, Poland 4-1 Albania
Group J: Iceland 0-2 Romania, Liechtenstein 0-2 Germany, North Macedonia 0-0 Armenia
Three Lions roar
England moved five points clear at the top of Group I courtesy of a second-half stroll in Budapest, scoring three times in 15 minutes through Raheem Sterling's finish after a slick move and headers from Harry Kane and Harry Maguire. Declan Rice added a long-range fourth with three minutes remaining.
Sweden end Spain's streak
The hosts recovered from conceding an early Carlos Soler goal to beat Spain in Solna and go top of Group B. Alexander Isak cancelled out the opener straight from kick-off – making it 1-1 after just six minutes – before Dejan Kulusevski's brilliance set up Viktor Claesson's second-half winner. A resolute defensive display saw the hosts home and ended La Roja's 66-game unbeaten run in World Cup qualifiers dating back to 1993.
Italy equalled Spain's European record of 35 international matches unbeaten – but were frustrated by a gallant Bulgaria side in Florence. Federico Chiesa's wonderful goal put the new European champions in front but Atanas Iliev swept Bulgaria level before the break. The Azzurri completely dominated the second half but brave defending and some excellent goalkeeping from Georgi Georgiev kept them at bay.
Best of the rest
Belgium had to recover from a goal down to see off Estonia, with the ever-prolific Romelu Lukaku striking twice. Robert Lewandowski is equally relentless and he took his tally to 11 goals in his last seven games for club and country with the opener as Poland overcame Albania. There was also a winning start for new Germany coach Hansi Flick.
All Wednesday's results
Group A: Luxembourg 2-1 Azerbaijan, Portugal 2-1 Republic of Ireland
Group D: Kazakhstan 2-2 Ukraine, France 1-1 Bosnia and Herzegovina
Group F: Denmark 2-0 Scotland, Faroe Islands 0-4 Israel, Moldova 0-2 Austria
Group G: Latvia 3-1 Gibraltar, Norway 1-1 Netherlands, Turkey 2-2 Montenegro
Group H: Malta 3-0 Cyprus, Russia 0-0 Croatia, Slovenia 1-1 Slovakia
Ronaldo's glorious night
A dramatic late double from Ronaldo earned pace-setting Portugal three Group A points at the expense of the Republic of Ireland. The visitors had taken the lead through John Egan's first-half header after teenage goalkeeper Gavin Bazunu had saved a Ronaldo penalty. But the 36-year-old wasn't to be denied as his two headers turned the game late on. Those goals moved Ronaldo top of the all-time list of men's international goalscorers with 111, on the same night he equalled Spain legend Sergio Ramos' European record of 180 international caps.
Turkey let it slip
Risto Radunović's sensational last-gasp free-kick rescued a draw for Montenegro after they had been two goals down and so denied Turkey a three-point lead in Group G. Cengiz Ünder's spectacular solo run and strike and Yusuf Yazıcı's close-range finish following a slick move had given the hosts the momentum until Adam Marušić slotted in close to half-time for third-placed Montenegro. With Norway and the Netherlands drawing, the top four are separated by just a single point.
Griezmann's lucky break
Antoine Griezmann was credited with the goal that secured ten-man France a Group D point at home to Bosnia and Herzegovina. His effort cancelled out Edin Dzeko's opener, but had more than a touch of fortune as Dzeko's clearing header hit the France forward on the back and then took a further deflection on its way in, with VAR confirming the ball had crossed the line on its first night in use at all the matches.
Best of the rest
UEFA EURO 2020 semi-finalists Denmark made it four wins from four in Group F as they saw off Scotland and opened up a five-point cushion in their section. By contrast, all the teams in Group H are separated by just three points after draws in Russia and Slovenia, and a record victory in a competitive game for Malta.