Fabinho – 6: The Brazilian joined the action with 10 minutes to go for Origi. He helped see the team across the line.
Max Woltman - 5: The 18-year-old was given a brief runout at Minamino’s expense in stoppage time. He will always remember his debut.
Conor Bradley - 5: The 18-year-old was given another taste of the action in stoppage time when Williams left the game. He got a touch of the ball in his handful of seconds on the pitch. EPA
AC MILAN RATINGS: Mike Maignan - 5: The Frenchman was generally secure but he blocked Mane’s shot back into the danger area instead of palming the ball over or wide. Origi made the most of the mistake. EPA
Pierre Kalulu - 5: The 21-year-old found Mane a handful but made life hard for the striker. He was unable to create anything going forward and was replaced by Florenzi in the 65th minute. AP
Fikayo Tomori - 4: The former Chelsea defender scored the opener but gifted Liverpool possession before their second goal. That moment showed his nervousness on the ball. EPA
Alessio Romagnoli - 5: The captain was strong in the tackle and made a number of good blocks. He was more comfortable passing the ball out than his colleagues. AP
Theo Hernandez - 4: The Frenchman tried to be bold going forward but did little to disrupt the Liverpool defence. He was too adventurous against the threat of Salah. EPA
Sandro Tonali - 4: The 21-year-old found it hard to create any danger. He exerted no control over Liverpool’s weakened midfield and was substituted in the 59th minute for Saelemaekers. EPA
Franck Kessie - 3: The Ivorian was shrugged off too easily by Oxlade-Chamberlain in the run up to Liverpool’s equaliser. He had a late chance to level the scores but was foiled by Alisson. EPA
Junior Messias - 4: The Brazilian disappeared for long periods. He created a chance for Krunic but otherwise made little impression. PA
Brahim Diaz - 3: The Spaniard was anonymous. No one was shocked when he was replaced by Bennacer with 31 minutes left. AP
Rade Krunic - 3: The Bosnian gave the defenders an easy night. He shot over the bar just after the hour but never came close to scoring. AP
Zlatan Ibrahimovic - 2: The 40-year-old was isolated and had little service but a man with his reputation should have done more. A very poor effort. AP
SUBS: Ismael Bennacer - 5: The 24-year-old replaced Diaz in the 59th minute. He was more composed on the ball than most of his team-mates. AFP
Alexis Saelemaekers - 3: The Belgian came on for Tonali in the 59th minute. He did next to nothing to unnerve the defence. AP
Alessandro Florenzi - 4: The 30-year-old was introduced with 25 minutes left for Kalulu, presumably to give more forward thrust. It didn’t work. PA
Tiemoue Bakayoko - 4: The Chelsea loanee was given seven minutes to make an impact when Krunic departed. He was immediately dispossessed by Oxlade-Chamberlain and things got no better. Reuters
LIVERPOOL RATINGS: Alisson Becker - 7: The Brazilian was surprised that the corner was let through for Milan’s goal but he made an excellent save from Kessie late on to maintain the victory. PA
Neco Williams - 7: The 20-year-old was comfortable on the ball and secure when defending. He might have expected a more difficult night. PA
Nathaniel Phillips - 7: The 24-year-old made his first start of the season and was in control throughout. He even made a shimmying dribble out of his own area. EPA
Ibrahima Konate - 8: The Frenchman was imperious. This was his best game for Liverpool and he kept a tight rein on Ibrahimovic. EPA
Kostas Tsimikas - 7: Milan tried to take advantage of the Greek but after a difficult start he came out on top. A gritty performance. PA
Tyler Morton - 7: The 19-year-old was unfazed by the San Siro. He got better as the game went on and caused problems for the home side. EPA
Alex Oxlade-Chamberlain - 8: The 28-year-old bulldozed past Kessie to generate Salah’s goal and controlled the midfield. He should have scored late on. PA
Takumi Minamino - 6: The Japanese made a lame effort to block the corner that led to Milan’s opening goal but never stopped running. He presses hard but is often late to the ballcarrier. Getty
Mohamed Salah - 7: The Egyptian cruised through 64 minutes of action as if it was a friendly. When he got a sniff of goal he showed great technique to put the ball into the net. He was replaced by Keita with 26 minutes to go. Getty
Divock Origi - 7: The Belgian scored the winning goal, led the line effectively and showed off his quick footwork in the opposition box. He once again proved to be a useful option for the team. He made way for Fabinho after 80 minutes. PA
Sadio Mane - 7:
The Senegalese buzzed around and made a nuisance of himself. He showed great speed of thought and leg to steal the ball from Tomori and his parried shot allowed Origi to score. Withdrawn after 65 minutes for Gomez. PA
SUBS: Naby Keita - 7: The midfielder replaced Salah after 64 minutes. He set up a great chance for Oxlade-Chamberlain and made the most of his time on the pitch. AP
Joe Gomez - 7: The 24-year-old came on for Mane with 25 minutes to go and slotted in at right back. It helped ease him back towards match fitness. EPA
Fabinho – 6: The Brazilian joined the action with 10 minutes to go for Origi. He helped see the team across the line.
Max Woltman - 5: The 18-year-old was given a brief runout at Minamino’s expense in stoppage time. He will always remember his debut.
Conor Bradley - 5: The 18-year-old was given another taste of the action in stoppage time when Williams left the game. He got a touch of the ball in his handful of seconds on the pitch. EPA
AC MILAN RATINGS: Mike Maignan - 5: The Frenchman was generally secure but he blocked Mane’s shot back into the danger area instead of palming the ball over or wide. Origi made the most of the mistake. EPA
Pierre Kalulu - 5: The 21-year-old found Mane a handful but made life hard for the striker. He was unable to create anything going forward and was replaced by Florenzi in the 65th minute. AP
Fikayo Tomori - 4: The former Chelsea defender scored the opener but gifted Liverpool possession before their second goal. That moment showed his nervousness on the ball. EPA
Alessio Romagnoli - 5: The captain was strong in the tackle and made a number of good blocks. He was more comfortable passing the ball out than his colleagues. AP
Theo Hernandez - 4: The Frenchman tried to be bold going forward but did little to disrupt the Liverpool defence. He was too adventurous against the threat of Salah. EPA
Sandro Tonali - 4: The 21-year-old found it hard to create any danger. He exerted no control over Liverpool’s weakened midfield and was substituted in the 59th minute for Saelemaekers. EPA
Franck Kessie - 3: The Ivorian was shrugged off too easily by Oxlade-Chamberlain in the run up to Liverpool’s equaliser. He had a late chance to level the scores but was foiled by Alisson. EPA
Junior Messias - 4: The Brazilian disappeared for long periods. He created a chance for Krunic but otherwise made little impression. PA
Brahim Diaz - 3: The Spaniard was anonymous. No one was shocked when he was replaced by Bennacer with 31 minutes left. AP
Rade Krunic - 3: The Bosnian gave the defenders an easy night. He shot over the bar just after the hour but never came close to scoring. AP
Zlatan Ibrahimovic - 2: The 40-year-old was isolated and had little service but a man with his reputation should have done more. A very poor effort. AP
SUBS: Ismael Bennacer - 5: The 24-year-old replaced Diaz in the 59th minute. He was more composed on the ball than most of his team-mates. AFP
Alexis Saelemaekers - 3: The Belgian came on for Tonali in the 59th minute. He did next to nothing to unnerve the defence. AP
Alessandro Florenzi - 4: The 30-year-old was introduced with 25 minutes left for Kalulu, presumably to give more forward thrust. It didn’t work. PA
Tiemoue Bakayoko - 4: The Chelsea loanee was given seven minutes to make an impact when Krunic departed. He was immediately dispossessed by Oxlade-Chamberlain and things got no better. Reuters
LIVERPOOL RATINGS: Alisson Becker - 7: The Brazilian was surprised that the corner was let through for Milan’s goal but he made an excellent save from Kessie late on to maintain the victory. PA
Neco Williams - 7: The 20-year-old was comfortable on the ball and secure when defending. He might have expected a more difficult night. PA
Nathaniel Phillips - 7: The 24-year-old made his first start of the season and was in control throughout. He even made a shimmying dribble out of his own area. EPA
Ibrahima Konate - 8: The Frenchman was imperious. This was his best game for Liverpool and he kept a tight rein on Ibrahimovic. EPA
Kostas Tsimikas - 7: Milan tried to take advantage of the Greek but after a difficult start he came out on top. A gritty performance. PA
Tyler Morton - 7: The 19-year-old was unfazed by the San Siro. He got better as the game went on and caused problems for the home side. EPA
Alex Oxlade-Chamberlain - 8: The 28-year-old bulldozed past Kessie to generate Salah’s goal and controlled the midfield. He should have scored late on. PA
Takumi Minamino - 6: The Japanese made a lame effort to block the corner that led to Milan’s opening goal but never stopped running. He presses hard but is often late to the ballcarrier. Getty
Mohamed Salah - 7: The Egyptian cruised through 64 minutes of action as if it was a friendly. When he got a sniff of goal he showed great technique to put the ball into the net. He was replaced by Keita with 26 minutes to go. Getty
Divock Origi - 7: The Belgian scored the winning goal, led the line effectively and showed off his quick footwork in the opposition box. He once again proved to be a useful option for the team. He made way for Fabinho after 80 minutes. PA
Sadio Mane - 7:
The Senegalese buzzed around and made a nuisance of himself. He showed great speed of thought and leg to steal the ball from Tomori and his parried shot allowed Origi to score. Withdrawn after 65 minutes for Gomez. PA
SUBS: Naby Keita - 7: The midfielder replaced Salah after 64 minutes. He set up a great chance for Oxlade-Chamberlain and made the most of his time on the pitch. AP
Joe Gomez - 7: The 24-year-old came on for Mane with 25 minutes to go and slotted in at right back. It helped ease him back towards match fitness. EPA
Fabinho – 6: The Brazilian joined the action with 10 minutes to go for Origi. He helped see the team across the line.
Max Woltman - 5: The 18-year-old was given a brief runout at Minamino’s expense in stoppage time. He will always remember his debut.
Conor Bradley - 5: The 18-year-old was given another taste of the action in stoppage time when Williams left the game. He got a touch of the ball in his handful of seconds on the pitch. EPA