Two goals from Richarlison inspired Brazil to a hard-fought 2-0 victory over Serbia on Thursday evening.
A scrappy game came to life after the break as Brazil found their groove and Richarlison grabbed two impressive goals to give the pre-tournament favourites the ideal start to life in Qatar.
Neymar nearly caught out Serbia goalkeeper Vanja Milinkovic-Savic directly from a corner after ten minutes, with the former Manchester United goalkeeper reacting well to beat the ball away.
Milinkovic-Savic came to his team's rescue again soon after as he raced off his line to confront the electric Vinicius Junior, diving at the Real Madrid man's feet to clear the danger before he could get a shot off.
Raphinha and Vinicius Junior should have done far better with chances soon after as Brazil, while dominant, failed to really ask any questions of the 6'9 monster in between Serbia's posts inside the first 45 minutes.
After the break, Brazil's first real opportunity came after ten minutes as Neymar misjudged a cross and slashed a good chance well wide of the goal.
Alex Sandro then struck the post with a fierce strike from range, before Richarlison finally opened the scoring just after the hour mark.
Some nice work in the box from Neymar ended with the ball at the feet of Vinicius, whose strike was parried into the path of the Tottenham forward to tap home and put Brazil deservedly ahead.
His first was a bit scrappy but there was nothing but class about Richarlison's second. With 15 minutes to go, he got up to meet a cross with an outrageous bicycle kick which thundered into the back of the net and sealed the win in emphatic style.
Casemiro had a sensational attempt at a third as he fired at goal from range, but Milinkovic-Savic was equal to it.
They didn't need the third, however, as Serbia offered very little going forwards and allowed Brazil to waltz to victory.
1. Brazil (4-2-3-1)
GK: Alisson - 6/10 - Didn't have a whole lot to do.
RB: Danilo - 5/10 - Defensively sound but games like this require more in attack.
CB: Thiago Silva - 8/10 - Did everything he needed at the back and operated like a quarterback in possession, picking apart Serbia's defence with ease.
CB: Marquinhos - 7/10 - Equally as comfortable as his defensive partner. Will be relieved to have avoided a battle with Mitrovic.
LB: Alex Sandro - 5/10 - Needed to do so much more down the left wing.
DM: Casemiro - 8/10 - Sublime passing range. Didn't have a lot of defending to do so had all the freedom in the world to flash his more creative side.
DM: Lucas Paqueta - 7/10 - Didn't play as deep as his role would suggest as he had plenty of opportunities to pull the strings in midfield.
RM: Raphinha - 4/10 - Ran into a few dead ends and guilty of some really underwhelming shots on goal. Didn't really look up for it against Serbia's bruising defenders.
AM: Neymar - 6/10 - Targeted by plenty of fouls but dropped deeper in the second half to try and orchestrate things a little better. Made some questionable decisions at times.
LM: Vinicius Junior - 8/10 - A constant menace down the left and walked away with a couple of assists.
ST: Richarlison - 7/10 - Incredibly quiet before his goals but looked a massive threat after the break.
SUB: Fred (75' for Paqueta) - 6/10
SUB: Rodrygo (75' for Vinicius) - 7/10
SUB: Antony (79' for Neymar) - 6/10
SUB: Gabriel Jesus (79' for Richarlison) - 6/10
SUB: Gabriel Martinelli (87' for Raphinha) - N/A
Manager: Tite - 7/10 - Criticised online by fans who didn't see the value in substituting his top players when the game was already won. Made a number of smart calls here.
2. Serbia (3-5-1-1)
GK: Vanja Milinkovic-Savic - 7/10 - Flew off his line to make a brave challenge on Vinicius Junior in the first half. Commanded his box.
CB: Milos Veljkovic - 6/10 - A few desperate blocks at times but you can't fault the effort.
CB: Nikola Milenkovic - 7/10 - A real monster against Brazil's forwards in the first half. Unfortunate to lose his clean sheet.
CB: Strahinja Pavlovic - 7/10 - Wasn't scared of Raphinha's pace whatsoever. Went toe-to-toe with him and almost always came out on top.
RM: Andrija Zivkovic - 5/10 - Did a solid job defensively but his lack of movement in attack ensured Serbia remained on the back foot for the first hour.
CM: Sergej Milinkovic-Savic - 6/10 - Had a few delicious runs from deep but was largely kept out of things by Casemiro.
CM: Nemanja Gudelj - 7/10 - His yellow card early in the second half changed the tone of the game as he couldn't maintain his impressive defensive levels.
CM: Sasa Lukic - 6/10 - Did a decent defensive job. Seemed determined to rip Neymar's shirt off at times.
LM: Filip Mladenovic - 4/10 - His lack of attacking output was a massive issue before his substitution.
AM: Dusan Tadic - 5/10 - Had the odd nice moment but couldn't get as involved as he's used to at club level.
ST: Aleksandar Mitrovic - 2/10 - Starved of service but didn't do a whole lot to help himself.
SUB: Ivan Ilic (57' for Gudelj) - 5/10
SUB: Nemanja Radonjic (57' for Zivkovic) - 5/10
SUB: Dusan Vlahovic (66' for Mladenovic) - 5/10
SUB: Darko Lazovic (66' for Lukic) - 5/10
SUB: Nemanja Maksimovic (83' for Mitrovic) - N/A
Manager: Dragan Stojkovic - 5/10 - Tried to set his side up to be tough to beat but couldn't come up with a way to live with Brazil. Seemed to be chasing shadows in the second half as he changed systems.