Match ends, Serbia 2, Portugal 4.
European and Nations League champions Portugal kick-started their Euro 2020 qualifying campaign with a hard-fought win over Serbia in Belgrade.
Portugal went ahead through William Carvalho and Goncalo Guedes before Nikola Milenkovic pulled one back.
But further goals by Cristiano Ronaldo and Bernardo Silva ensured Portugal took home three points despite Aleksandar Mitrovic's late goal.
Portugal now sit on five points from their three Euro 2020 qualifiers.
Meanwhile, Serbia have taken only four points from their four qualifiers to date.
In what was their first outing since their Nations League triumph over the Netherlands in June, Portugal struggled to get going against a hard-working Serbian side, who more than held their own throughout.
And after an even first half they somewhat fortuitously went ahead when Carvalho poked home after a defensive mishap involving Serbian goalkeeper Marko Dmitrovic and defenders Nikola Milenkovic and Matija Nastasic following Bruno Fernandes' deep cross.
Guedes, who scored the only goal in the Nations League final, added their second when he skipped past Nikola Maksimovic and fired into the top corner after some fine, one-touch build-up play from Silva, Ronaldo and Fernandes.
Serbia, who deserved more from the game, halved the defecit through Milenkovic's header from Dusan Tadic's corner only for Ronaldo to score for Portugal with a fine dinked finish just minutes later.
Mitrovic looked to have set up a tense finale on 85 minutes when he blasted home after receiving Tadic's pass but Portugal again struck back almost immediately through Silva's measured finish from the edge of the box, which sealed their first win of the qualifying campaign.
Serbia, who only introduced Real Madrid striker Luka Jovic with three minutes left, will now look to reignite their qualifying campaign in Luxembourg on Tuesday while Portugal face Lithuania in Vilnius the same night.
- 19MaksimovicBooked at 10mins
- 11KolarovBooked at 64mins
- 4MilivojevicSubstituted forJovicat 87'minutes
- 14LazovicSubstituted forLjajicat 59'minutes
- 17KosticSubstituted forKataiat 83'minutes
- 1Rui Patrício
- 2Nélson SemedoSubstituted forCanceloat 65'minutes
- 6José Fonte
- 4Rúben DiasBooked at 39mins
- 10Bernardo Silva
- 14William CarvalhoBooked at 89mins
- 11Bruno FernandesSubstituted forJoão Moutinhoat 85'minutes
- 17Gonçalo GuedesSubstituted forSequeiraat 70'minutes
- 7Cristiano Ronaldo
- 3Martins Carriço
- 8João Moutinho
- 12Malheiro de Sá
- 15Ferreira Silva
- 16Renato Sanches
- 19Mário Rui
- 21Afonso Fernandes
- Cüneyt Çakir
- Shots on Target
Second Half ends, Serbia 2, Portugal 4.
Foul by João Moutinho (Portugal).
Aleksandar Kolarov (Serbia) wins a free kick in the defensive half.
Corner, Portugal. Conceded by Nikola Milenkovic.
Attempt blocked. João Félix (Portugal) right footed shot from the left side of the box is blocked. Assisted by Cristiano Ronaldo.
Attempt saved. Aleksandar Katai (Serbia) right footed shot from outside the box is saved in the bottom left corner. Assisted by Adem Ljajic.
Foul by João Cancelo (Portugal).
Aleksandar Katai (Serbia) wins a free kick on the left wing.
Hand ball by João Moutinho (Portugal).
William Carvalho (Portugal) is shown the yellow card for a bad foul.
Foul by William Carvalho (Portugal).
Dusan Tadic (Serbia) wins a free kick in the defensive half.
Substitution, Serbia. Luka Jovic replaces Luka Milivojevic.
Goal! Serbia 2, Portugal 4. Bernardo Silva (Portugal) left footed shot from the centre of the box to the bottom right corner. Assisted by Raphael Guerreiro.
Attempt blocked. Cristiano Ronaldo (Portugal) right footed shot from the centre of the box is blocked.
Substitution, Portugal. João Moutinho replaces Bruno Fernandes.
Goal! Serbia 2, Portugal 3. Aleksandar Mitrovic (Serbia) right footed shot from the centre of the box to the top right corner. Assisted by Dusan Tadic.
Substitution, Serbia. Aleksandar Katai replaces Filip Kostic.
Attempt saved. Adem Ljajic (Serbia) right footed shot from outside the box is saved in the bottom left corner. Assisted by Aleksandar Mitrovic.