Abde Ezzalzouli (Amallah, 78’) – N/A. Was unlucky that his block on Mbappe’s shot saw the ball fall to Kolo Muani. His late shot was blocked and he then made a superb run to set up the chance for Hamdallah. EPA
FRANCE RATINGS: Hugo Lloris - 8. Saved El Yamiq’s free-kick on 44, stopped Morocco going level. Assured at corners and behind a side missing key players, yet still winning when it matters. Getty
Theo Hernandez - 9. Put France ahead inside five minutes, waiting for a ball to drop and taking advantage of poor defending. Got into trouble in his own area after 26, winning the ball yet seeing Morocco appeals for a penalty after he followed through. Key challenges to the end. AP
Ibrahima Konate - 8. In for Obamekami, stretched to make a fine tackle on Hakimi after 41 under a period of Morocco pressure after a very entertaining first half. Blocked a Hakimi shot at the start of the second half. And again as Morocco got behind the France defence. AFP
Raphael Varane - 8. Distraught when injured at Chelsea in October, a World Cup finalist in December. Near post run saw him shoot wide on 40. AFP
Jules Kounde - 8. Right back - rather than preferred central role. Performed well. France had won one of six matches coming into the World Cup finals, but they have a chance to retain the title if they win Sunday’s final. Blocked a 93rd minute effort on the line. AP
Youssouf Fofana - 8. In for Rabiot and performed well. Involved in the build up for the second in front of the 68,294 crowd. PA
Aurelien Tchouameni - 8. So impressive striding forward, so impressive defending too. All action and more touches than any player on the field. You can see why Real Madrid paid so much for him. AFP
Ousmane Dembele - 8. Showed his pace in the moments when France attacked. Excellent skill before setting up the second. Getty
Antoine Griezmann - 9. Always asked for the ball and made runs behind defenders. Wonderful movement as he looked for pockets of opportunities in the space where it can hurt. Defended well, too. Excellent. AP
Kylian Mbappe - 8. Came close to making it two, then set up the second. Late nutmeg on Amrabat, one of best players in the tournament. Getty
Olivier Giroud - 8. Took a shot which came out and ultimately led to the first goal. Smashed the post with a shot on 16. Went off – was pushed off by a frustrated Morocco player. Getty
SUBS: Marcus Thuram - 7. On for Giroud after 65. Like his father, he could be winning the World Cup. EPA
Randal Kolo Muani - 7. On for Dembele after 78 for just a fourth cap - he played up front in the defeat to Tunisia. He had been on the pitch for seconds and tapped in France’s second to put the game beyond a fine Morocco team. AP
MOROCCO RATINGS: Yassine Bounou - 6. There was nothing he could have done for either of the goals. Took a blow from Mbappe when collecting Griezmann’s ball through and was confident with the ball at his feet. EPA
Achraf Hakimi - 7. Was unlucky to see Hernandez score after blocking Mbappe’s shot. Provided a real threat in forward areas, coming close to keeping the ball when he turned in France’s box. Struggled defensively at times in the second period but made a great late recovery to deny Mbappe. Getty
Achraf Dari - 6. After coming in as a last-minute replacement for Nayef Aguerd, he was unable to keep out Hernandez’s effort after getting back onto the goal line. Made some strong tackles on Mbappe but also dived in too quickly at times. AP
Romain Saiss - 5. Tried to play through the pain barrier but simply couldn’t, as was made clear when he misjudged the bounce from a long ball forward to allow Giroud to get in behind before going off. Getty
Jawad El Yamiq - 5. Gambled on winning the ball ahead of Griezmann and paid the price as France scored the opener, then lost possession cheaply in the build-up to the second. He also had good moments as he cleared an Mbappe shot and was unlucky not to score with an overhead kick. AP
Noussair Mazraoui - 6. Carelessly allowed himself to roam offside to bring a brilliant Moroccan move to a disappointing end and didn’t look completely fit, but he still defended well against Dembele. AP
Hakim Ziyech - 6. Had a slow start with a wasteful shot, but his influence grew as the first half progressed, with some of his set-piece deliveries causing problems for France. Linked up beautifully with Hakimi at times and tried to make things happen until the end. AFP
Azzedine Ounahi - 8. Forced Lloris into a good save with a curling shot from range and continued to impress. His deflected shot fell to Hamdallah. Also positioned himself well to regain possession at times. AFP
Sofyan Amrabat - 8. Provided an all-action performance from the first whistle to the last, while he also played some brilliant passes to spread the play for Morocco. Made an outstanding tackle on Mbappe after it looked like he’d been beaten. Getty
Sofiane Boufal - 7. Was very confident on the ball under pressure, turning to get away from Tchouameni and slipping the ball through for Ziyech’s chance. Booked for a challenge on Hernandez in the opposition box. Came close to finding En Nesyri with his cross. EPA
Youssef En Nesyri - 6. Had a frustrating game where chances didn’t quite fall for him despite intelligent runs and impressive pass attempts. An example came when he couldn’t quite reach Boufal’s cross. EPA
SUBS: Selim Amallah (Saiss, 21’) - 7. Looked bright off the bench and had some massive nearly moments in the first half, with a searching pass coming close to reaching En Nesyri before he was inches away from reaching Ziyech’s free-kick. Did brilliantly to halt Dembele’s run forward. AP
Yahia Attiyat Allah (Mazraoui, HT) - 6. Hit a wild shot when the ball awkwardly fell to him in the box, but he then got behind Kounde and forced Konate into an impressive intervention. Reuters
Abderrazak Hamdallah (En Nesyri, 66’) - 5. Tried to do too much when there was an opportunity to shoot after he had done well to break into the box. His touch on Ounahi’s deflected shot was denied by Kounde. AFP
Zakaria Aboukhlal (Boufal, 67’) - 6. Was bright off the bench and came agonisingly close to reaching Attiyat Allah’s cross moments after coming on. Rose well to reach another cross but couldn’t get enough of a connection to turn the ball goalward. PA
Abde Ezzalzouli (Amallah, 78’) – N/A. Was unlucky that his block on Mbappe’s shot saw the ball fall to Kolo Muani. His late shot was blocked and he then made a superb run to set up the chance for Hamdallah. EPA
FRANCE RATINGS: Hugo Lloris - 8. Saved El Yamiq’s free-kick on 44, stopped Morocco going level. Assured at corners and behind a side missing key players, yet still winning when it matters. Getty
Theo Hernandez - 9. Put France ahead inside five minutes, waiting for a ball to drop and taking advantage of poor defending. Got into trouble in his own area after 26, winning the ball yet seeing Morocco appeals for a penalty after he followed through. Key challenges to the end. AP
Ibrahima Konate - 8. In for Obamekami, stretched to make a fine tackle on Hakimi after 41 under a period of Morocco pressure after a very entertaining first half. Blocked a Hakimi shot at the start of the second half. And again as Morocco got behind the France defence. AFP
Raphael Varane - 8. Distraught when injured at Chelsea in October, a World Cup finalist in December. Near post run saw him shoot wide on 40. AFP
Jules Kounde - 8. Right back - rather than preferred central role. Performed well. France had won one of six matches coming into the World Cup finals, but they have a chance to retain the title if they win Sunday’s final. Blocked a 93rd minute effort on the line. AP
Youssouf Fofana - 8. In for Rabiot and performed well. Involved in the build up for the second in front of the 68,294 crowd. PA
Aurelien Tchouameni - 8. So impressive striding forward, so impressive defending too. All action and more touches than any player on the field. You can see why Real Madrid paid so much for him. AFP
Ousmane Dembele - 8. Showed his pace in the moments when France attacked. Excellent skill before setting up the second. Getty
Antoine Griezmann - 9. Always asked for the ball and made runs behind defenders. Wonderful movement as he looked for pockets of opportunities in the space where it can hurt. Defended well, too. Excellent. AP
Kylian Mbappe - 8. Came close to making it two, then set up the second. Late nutmeg on Amrabat, one of best players in the tournament. Getty
Olivier Giroud - 8. Took a shot which came out and ultimately led to the first goal. Smashed the post with a shot on 16. Went off – was pushed off by a frustrated Morocco player. Getty
SUBS: Marcus Thuram - 7. On for Giroud after 65. Like his father, he could be winning the World Cup. EPA
Randal Kolo Muani - 7. On for Dembele after 78 for just a fourth cap - he played up front in the defeat to Tunisia. He had been on the pitch for seconds and tapped in France’s second to put the game beyond a fine Morocco team. AP
MOROCCO RATINGS: Yassine Bounou - 6. There was nothing he could have done for either of the goals. Took a blow from Mbappe when collecting Griezmann’s ball through and was confident with the ball at his feet. EPA
Achraf Hakimi - 7. Was unlucky to see Hernandez score after blocking Mbappe’s shot. Provided a real threat in forward areas, coming close to keeping the ball when he turned in France’s box. Struggled defensively at times in the second period but made a great late recovery to deny Mbappe. Getty
Achraf Dari - 6. After coming in as a last-minute replacement for Nayef Aguerd, he was unable to keep out Hernandez’s effort after getting back onto the goal line. Made some strong tackles on Mbappe but also dived in too quickly at times. AP
Romain Saiss - 5. Tried to play through the pain barrier but simply couldn’t, as was made clear when he misjudged the bounce from a long ball forward to allow Giroud to get in behind before going off. Getty
Jawad El Yamiq - 5. Gambled on winning the ball ahead of Griezmann and paid the price as France scored the opener, then lost possession cheaply in the build-up to the second. He also had good moments as he cleared an Mbappe shot and was unlucky not to score with an overhead kick. AP
Noussair Mazraoui - 6. Carelessly allowed himself to roam offside to bring a brilliant Moroccan move to a disappointing end and didn’t look completely fit, but he still defended well against Dembele. AP
Hakim Ziyech - 6. Had a slow start with a wasteful shot, but his influence grew as the first half progressed, with some of his set-piece deliveries causing problems for France. Linked up beautifully with Hakimi at times and tried to make things happen until the end. AFP
Azzedine Ounahi - 8. Forced Lloris into a good save with a curling shot from range and continued to impress. His deflected shot fell to Hamdallah. Also positioned himself well to regain possession at times. AFP
Sofyan Amrabat - 8. Provided an all-action performance from the first whistle to the last, while he also played some brilliant passes to spread the play for Morocco. Made an outstanding tackle on Mbappe after it looked like he’d been beaten. Getty
Sofiane Boufal - 7. Was very confident on the ball under pressure, turning to get away from Tchouameni and slipping the ball through for Ziyech’s chance. Booked for a challenge on Hernandez in the opposition box. Came close to finding En Nesyri with his cross. EPA
Youssef En Nesyri - 6. Had a frustrating game where chances didn’t quite fall for him despite intelligent runs and impressive pass attempts. An example came when he couldn’t quite reach Boufal’s cross. EPA
SUBS: Selim Amallah (Saiss, 21’) - 7. Looked bright off the bench and had some massive nearly moments in the first half, with a searching pass coming close to reaching En Nesyri before he was inches away from reaching Ziyech’s free-kick. Did brilliantly to halt Dembele’s run forward. AP
Yahia Attiyat Allah (Mazraoui, HT) - 6. Hit a wild shot when the ball awkwardly fell to him in the box, but he then got behind Kounde and forced Konate into an impressive intervention. Reuters
Abderrazak Hamdallah (En Nesyri, 66’) - 5. Tried to do too much when there was an opportunity to shoot after he had done well to break into the box. His touch on Ounahi’s deflected shot was denied by Kounde. AFP
Zakaria Aboukhlal (Boufal, 67’) - 6. Was bright off the bench and came agonisingly close to reaching Attiyat Allah’s cross moments after coming on. Rose well to reach another cross but couldn’t get enough of a connection to turn the ball goalward. PA
Abde Ezzalzouli (Amallah, 78’) – N/A. Was unlucky that his block on Mbappe’s shot saw the ball fall to Kolo Muani. His late shot was blocked and he then made a superb run to set up the chance for Hamdallah. EPA