France (4-2-3-1)
Hugo Lloris (GK) Huge first-half save from El Yamiq, with help from the post, kept France ahead. Confident and secure. 8
Jules Koundé (RB) Cleared off the line to deny Morocco a deserved late consolation. Solid enough but was sometimes exposed after break. 6
Raphaël Varane (CB) Pass to Griezmann played role in the winner. Timing and leadership helped weather Morocco’s attacking flurries. 7
Ibrahima Konaté (CB) Drafted-in defender made some vital interceptions, denying En-Neysri a tap-in early in the second half. 8
Théo Hernandez (LB) Eyed bouncing ball and finished acrobatically to scupper Morocco’s plans and send France on their way. 7
Aurélien Tchouameni (CM) Had periods of midfield control and his
driving run set up a first-half Mbappé chance. 7
Youssouf Fofana (CM) Deputised for Adrien Rabiot and had mixed time against a crisp, high-energy Morocco engine room. 6
Ousmane Dembélé (RW) Rarely involved beyond a couple of bright runs and France may need a bigger contribution against Argentina. 5
Antoine Griezmann (AM) Got behind El Yamiq to have crucial hand in Hernandez’s goal. Attacking heartbeat was central to their best work. 7
Kylian Mbappé (LW) Limbering up for final. Both goals followed his blocked shots, the second after sublime footwork. Explosive at times. 7
Olivier Giroud (CF) Rapped post after beating a stricken Saïss and later missed an easier chance. Not his most effective night. 6
Substitutes: Thuram (for Giroud 65) Missed good headed chance to make it safe, 6; Kolo Muani (for Dembélé 79) Scored his first international goal straight after arriving, 7.
Morocco (5-4-1)
Yassine ‘Bono’ Bounou (GK) Will be frustrated at conceding so early when he was barely extended thereafter. Took risks in possession. 6
Achraf Hakimi (RB) Right-sided raids and combinations with Ziyech were a joy at times. Enjoyed tussle with clubmate Mbappé. 7
Achraf Dari (CB) Last-minute addition to side let nobody down, although Mbappé and Thuram both tested him for pace. 6
Romain Saïss (CB) Captain was passed fit but looked well off it when Giroud outstripped him and was quickly replaced. 5
Jawad El Yamiq (CB) Missed interception that let Griezmann in before opener proved costly. Denied redemption when stupendous overhead kick stayed out. 6
Noussair Mazraoui (LB) Made little impact going forward and half-time substitution suggested this was another fitness risk that backfired. 5
Hakim Ziyech (RW) Outrageous touches and link-up play kept Morocco flowing but end product was often frustrating. Overplayed frequently. 6
Azzedine Ounahi (CM) Tournament’s breakout player forced Lloris to save from range and was an all-action, clever performer throughout. 7
Sofyan Amrabat (CM) Shuddering tackle to halt Mbappé was a highlight. A class act who runs midfield and distributes beautifully. 8
Sofiane Boufal (LW) Purposeful and difficult to dispossess. Set up a glimpse for Ziyech but final pass inconsistent. Harshly booked. 6
Youssef En-Nesyri (CF) Quarter-final hero had few sniffs at goal, partly due to smart work from Konaté, and left early. 6
Substitutes: Amallah (for Saïss 21) Picked up midfield pace but was later subbed too, 6; Attiyat Allah (for Mazraoui 45) Dangerous sorties from left-back, 7; Hamdallah (for En-Nesyri 66) Briefly smelt glory with slalom through backline, 6; Aboukhlal (for Boufal 66) Tried to make things happen, 6; Ezzalzouli (for Amallah 78) Made little impact, 6.