Match ends, Liverpool 3, AC Milan 2.
Liverpool had to come from behind to win a Champions League thriller against AC Milan at Anfield.
Jurgen Klopp's team laid siege to Milan's goal from the start, taking a deserved early lead when former Chelsea defender Fikayo Tomori deflected a cross from Trent Alexander-Arnold into his own net.
Liverpool, who missed the chance to double their advantage when Mohamed Salah's penalty was saved by keeper Mike Maignan, were stunned when Milan, after being completely outplayed, struck twice in the space of seconds right on half-time to take the lead through Ante Rebic and Brahim Diaz.
Klopp's side regrouped to subject Milan to intense pressure once more after the break and were rewarded for their stirring comeback, Salah making amends for his penalty miss by equalising from close range after 48 minutes when he was superbly set up by Divock Origi.
And as the traffic became one-way once more with Anfield turning up the volume, Jordan Henderson rifled home his first Champions League goal for seven years in the 69th minute when Milan could only partially clear a Liverpool corner to settle this richly entertaining Group B opening game.
- Reaction to Liverpool v AC Milan & all Wednesday's Champions League games
- Klopp seeks 'common sense' over international call-ups
Liverpool survive Milan scare
Liverpool somehow managed to transform what was, for the most part, a superb performance into a nervous night at Anfield against a Milan side who were outplayed for almost the entire game.
They opened up in a manner that suggested this opening group game would be done and dusted by half-time as Liverpool created a succession of clear openings that resulted in one goal and should have brought more.
Milan were handed a reprieve when Salah suffered a rare blemish from the spot with only his second failure in 19 attempts, striking his effort too close to Maignan after Ismael Bennacer handled Andy Robertson's shot.
Anfield was stunned when Milan hit Liverpool twice right on the break to somehow end the first half in the lead, but it was a harsh lesson learned as they got careless in defence and were shown that any moments when you switch off will be punished in the Champions League.
There was still a sense of inevitability about Liverpool's victory and, in the manner reminiscent of so many of their wins in recent years, it was sheer weight of pressure that finally wore Milan down, even if the winner did come from an unlikely source as Henderson's crisp drive gave Maignan no chance.
It was no more than Liverpool deserved but it was also an early warning that sloppiness is very dangerous, even against a side who had barely been out of their own half in the first 45 minutes.
In the end, it is the win that counts in a very tight Champions League group which also contains Porto and the dangerous La Liga champions Atletico Madrid. Those two blemishes apart, Klopp will be delighted with so much of Liverpool's performance.
Klopp uses squad strength
Liverpool manager Klopp has flagged up that he will use all of his squad strength this season but he may have surprised a few by restricting Virgil van Dijk and Sadio Mane to the bench in an opening Champions League game where victory is always vital to gather instant momentum.
Klopp is determined not to overwork Van Dijk after he missed most of last season with a serious knee injury. It allowed Joe Gomez to get 90 minutes under his belt after he suffered a similar fate to his Dutch defensive partner when he was struck down with a knee problem on England duty.
Origi came in for Mane, and the player who will always be remembered at Anfield for his Champions League deeds in Liverpool's successful 2019 campaign - when he led the sensational semi-final comeback against Barcelona and scored in the final against Tottenham - made another key contribution here.
He produced a superb piece of ingenuity to set up Salah for his equaliser just after the interval at a time when Liverpool needed a swift response to those two Milan sucker punches right on half-time.
Origi later went off suffering from cramp, understandable given his lack of action, and Anfield showed its appreciation with a standing ovation.
Salah was the beneficiary and he was once again Liverpool's talisman, a man on a mission to put matters right after missing his penalty.
Klopp will continue to utilise his squad throughout this campaign but Salah will remain, as ever, absolutely central to all Liverpool's hopes in domestic competition and in the Champions League - and he delivered the goods again.
- 14HendersonSubstituted forMilnerat 84'minutesBooked at 90mins
- 8KeïtaSubstituted forThiago Alcántaraat 71'minutes
- 11SalahSubstituted forOxlade-Chamberlainat 84'minutes
- 27OrigiSubstituted forManéat 63'minutes
- 20JotaSubstituted forJonesat 71'minutes
- 4van Dijk
- 6Thiago Alcántara
- 4BennacerBooked at 13minsSubstituted forTonaliat 71'minutes
- 56SaelemaekersSubstituted forFlorenziat 62'minutes
- 10DíazBooked at 61mins
- 17da Conceição LeãoSubstituted forGiroudat 62'minutes
- 12RebicSubstituted forMaldiniat 83'minutes
- Szymon Marciniak
- Shots on Target
Second Half ends, Liverpool 3, AC Milan 2.
Attempt missed. Brahim Díaz (AC Milan) right footed shot from outside the box is just a bit too high. Assisted by Theo Hernández.
James Milner (Liverpool).
Alessandro Florenzi (AC Milan) wins a free kick in the defensive half.
James Milner (Liverpool) wins a free kick on the left wing.
Foul by Davide Calabria (AC Milan).
James Milner (Liverpool) is shown the yellow card for a bad foul.
Foul by James Milner (Liverpool).
Brahim Díaz (AC Milan) wins a free kick on the right wing.
Foul by Fabinho (Liverpool).
Daniel Maldini (AC Milan) wins a free kick in the defensive half.
Andrew Robertson (Liverpool) wins a free kick on the left wing.
Foul by Franck Kessié (AC Milan).
Attempt saved. Simon Kjaer (AC Milan) header from the right side of the box is saved in the bottom left corner. Assisted by Sandro Tonali with a cross.
Corner, AC Milan. Conceded by Joseph Gomez.
Offside, Liverpool. Andrew Robertson tries a through ball, but Sadio Mané is caught offside.
Substitution, Liverpool. James Milner replaces Jordan Henderson.
Substitution, Liverpool. Alex Oxlade-Chamberlain replaces Mohamed Salah.
Substitution, AC Milan. Daniel Maldini replaces Ante Rebic.
- Can Alex escape his family's criminal past? McMafia is streaming now on BBC iPlayer
- Concussions and rugby: What is the long-term impact of taking so many hits?