At 20', Alexander Isak put Sweden ahead, turning in a pass from Yasin Ayari for 1-0. Romania levelled at 29', when Dennis Man finished Andrei Ratiu's assist to make it 1-1. Razvan Marin was booked at 37', before Viktor Gyokeres put Sweden back in front at 43'. Virgil Ghita picked up a yellow at 45+2', and the teams reached half-time with Sweden leading 2-1.
Romania introduced Vladimir Screciu for Tudor Baluta at 45'. At 56', VAR ruled out a Sweden goal scored by Elliot Stroud, with Yasin Ayari credited with the assist. The decision was Goal Cancelled, and the score remained 2-1. Sweden made two changes soon after: Daniel Svensson replaced Emil Holm at 62', and Hjalmar Ekdal came on for Carl Starfelt at 63'. Romania made a double switch at 67', bringing on Valentin Mihaila for Louis Munteanu and Florin Tanase for Ianis Hagi.
Benjamin Nygren replaced Gyokeres at 76', and Patrik Walemark came on for Alexander Bernhardsson at 77'. Romania sent Nicolae Stanciu on for Razvan Marin at 81'; Screciu was booked at 83'. Sweden brought on Gabriel Gudmundsson for Sebastian Nanasi at 84'. Man was booked at 86' before making way for Vlad Dragomir at 88', and Andrei Coubis received a yellow at 90+1'. The score held at 2-1: Gyokeres' first-half strike proved the difference after Stroud's effort was ruled out.
| Metric | Sweden | Romania |
|---|---|---|
| Possession | 57% | 43% |
| Shots | 13 | 11 |
| Shots on target | 5 | 3 |
| Shots off target | 3 | 6 |
| Corners | 3 | 0 |
| Fouls | 6 | 16 |
| Yellow cards | 0 | 5 |
| Red cards | 0 | 0 |
| Offsides | 3 | 2 |
| Goalkeeper saves | 2 | 3 |