The first half was comfortable for Roberto Martinez’s men, who took the lead after ten minutes.
Dries Mertens’ pass trickled through the legs of defender Andrey Semenov and fell perfectly for Romelu Lukaku, who was never going to miss.
Lukaku was in an offside position in the build-up, but VAR adjudged that Semenov had deliberately played the ball.
Russia came close to equalising not long after when Mario Fernandes headed straight at Thibaut Courtois from Aleksandr Golovin’s corner.
Meanwhile, down the other end, Georgiy Dzhikiya made a fantastic tackle to deny Lukaku a second.
But it wasn’t long before Belgium got their second. Thorgan Hazard’s cross was spilt by goalkeeper Anton Shunin and into the path of substitute Thomas Meunier. The full-back placed the ball into the bottom corner with his weaker left foot.
The Red Devils almost underlined their dominance in first-half injury time. Yannick Carrasco weaved his way into the box but could only fire over after his fine solo run.
The second half was far milder, with Belgium controlling possession while coming under very little threat. And, in the closing stages, they put the icing on the cake with a third goal.
The two goalscorers combined, as Meunier slipped a through ball to Lukaku, who clinically finished at the near post.
The Inter Milan forward takes an early lead in the Golden Boot race, becoming the first player to net two.
The full-time whistle went, with Belgium coming away from the fixture as comfortable winners. They go top of the group, ahead of Finland on goal difference, while Russia are bottom.
Thibaut Courtois (6/10) – Very rarely tested all evening. Did fine when called upon.
Toby Alderweireld (7/10) – Coped well with the physical test of Dzyuba, not letting the big forward get the better of him.
Dedryck Boyata (7/10) – Composed and reliable at the back. Made a few impressive tackles.
Jan Vertonghen (7/10) – Rarely let anything get past him and looked good on the ball. Had to go off with 20 minutes to go with a knock.
Timothy Castagne (6/10) – Substituted after 27 minutes following a head injury.
Leander Dendoncker (7/10) – Did the dirty work from midfield and ensured that the backline came under little pressure.
Youri Tielemans (6/10) – Not at his best, but still helped control the game from the middle of the park.
Thorgan Hazard (7/10) – Playing in a left-wing-back role, the 28-year-old put in a good performance. His cross led to the second goal.
Dries Mertens (6/10) – Not his finest night, but still contributed heavily to the opening goal.
Romelu Lukaku (9/10) *MOTM* – Absolutely unplayable in the first half. Wasn’t as prominent after the break but managed to cap off his night with a second goal.
Yannick Carrasco (7/10) – Often threatening down the left and wasn’t far off scoring an excellent solo goal.
Thomas Meunier (8/10) – Took his goal well, making it look far easier than it actually was. Also got a wonderful assist for Lukaku. May have earned his way into the starting XI.
Eden Hazard (6/10)
Thomas Vermaelen (6/10)
Dennis Praet (6/10)
Anton Shunin (4/10) – Didn’t make any saves of note. Definitely should have done better for the second goal and perhaps will be disappointed to have been beaten by the third.
Mario Fernandes (5/10) – Had Russia’s best chance and probably should’ve done better. Didn’t have it easy up against Hazard and Carrasco.
Andrey Semenov (5/10) – Made a poor error to gift Lukaku his first goal. Didn’t do much wrong outside of that, but it was a costly mistake nonetheless.
Georgiy Dzhikiya (6/10) – Can’t be blamed for any of the goals and made a couple of excellent tackles.
Yuri Zhirkov (5/10) – Had a tough time at the back before being substituted in the first half.
Dmitriy Barinov (5/10) – Struggled to maintain any control in midfield. Subbed at half time.
Magomed Ozdoev (5/10) – Unable to make an impact in midfield up against a far better central pairing.
Roman Zobnin (5/10) – Failed to create anything of note. Subbed on 63 minutes.
Daler Kuzyaev (6/10) – Substituted after 27 minutes following a head injury.
Aleksandr Golovin (5/10) – Put in a couple of decent set pieces but didn’t create enough. More will be wanted from him.
Artem Dzyuba (5/10) – Often isolated up front. Kept battling but couldn’t do anything up against the three Belgian centre-backs.
Denis Cheryshev (5/10) – Came on for Kuzyaev, did very little, and was subbed again in the 63rd minute.
Vyacheslav Karavaev (5/10) – Came on for Zhirkov in the first half. Did nothing worth writing about.
Igor Diveev (5/10)
Maksim Mukhin (5/10)
Aleksey Miranchuk (5/10)