Jakub Kiwior's own goal and a late Luis Diaz strike gave Liverpool victory over Arsenal in the FA Cup third-round tie at Emirates Stadium.
Arsenal paid the price for missing a host of opportunities and were punished as Liverpool grew increasingly dangerous, the deadlock broken when Trent Alexander-Arnold's free-kick glanced in off Kiwior's head with seven minutes left.
Colombia winger Diaz then made sure of the Reds' progress with a breakaway goal in the last minute of added time.
Mikel Arteta's side dominated the first half, with Martin Odegaard hitting the bar while Reis Nelson and Kai Havertz also had chances to give Arsenal reward for their pressure.
But Liverpool, despite missing captain Virgil van Dijk through illness and with Mohamed Salah at the Africa Cup of Nations, held firm.
Alexander-Arnold also hit the bar in the first half and as they started to exert control after the break, home goalkeeper Aaron Ramsdale had to save well from Diaz while Diogo Jota headed against the bar.
Just as the replay that neither Arsenal nor Liverpool would have particularly wanted loomed, the unfortunate Kiwior headed past Ramsdale to put one foot in the fourth round for Jurgen Klopp's side.
With the Gunners pushing for an equaliser, Darwin Nunez and Jota combined to set Diaz free and he lashed the ball into the top corner to seal victory for the visitors.
- Watch and follow live text coverage of Arsenal v Liverpool in the FA Cup third round
- How did you rate Arsenal's performance? Have your say here
- What did you make of Liverpool's display? Send us your views here
Arsenal lack cutting edge
Arsenal could and should have held a healthy advantage when this FA Cup tie reached half-time but they were let down by what is looking increasingly like a major flaw in Arteta's team.
The Gunners' approach work was to be admired as they made Liverpool suffer by moving the ball around but it all fell down at the crucial moment when chances were not taken.
It led to increasing frustration inside the Emirates as the game wore on, accompanied by the growing feeling that Arsenal would pay the price for their failures in front of goal.
Gabriel Jesus was missing with a knee injury but he is not a regular, reliable source of goals while Eddie Nketiah has yet to suggest he is the permanent answer to a growing problem for Arteta.
So much is good about this Arsenal team but there is always the danger they will fall short if all their eye-catching passing play is not accompanied by end product.
It is something Arteta must address as a matter of urgency - something the manager and the club may well agree with given the constant links with Brentford's Ivan Toney. Whether they can do business in the difficult January market remains to be seen.
This is Arsenal's third successive defeat since their creditable draw at Anfield on 23 December - and the feeling of positivity around Arteta's team after that result must be restored swiftly.
Player of the match
Diogo JotaDiogo Jota
with an average of 7.99
Arsenal
Squad number1Player nameRamsdale
Squad number2Player nameSaliba
Squad number8Player nameØdegaard
Squad number41Player nameRice
Squad number4Player nameWhite
Squad number6Player nameGabriel Magalhães
Squad number7Player nameSaka
Squad number11Player nameGabriel Martinelli
Squad number20Player nameJorginho
Squad number24Player nameNelson
Squad number15Player nameKiwior
Squad number29Player nameHavertz
Squad number10Player nameSmith Rowe
Squad number19Player nameTrossard
Squad number14Player nameNketiah
Liverpool
Squad number20Player nameDiogo Jota
Squad number84Player nameBradley
Squad number5Player nameKonaté
Squad number38Player nameGravenberch
Squad number42Player nameClark
Squad number1Player nameAlisson
Squad number7Player nameDíaz
Squad number2Player nameGomez
Squad number78Player nameQuansah
Squad number17Player nameJones
Squad number19Player nameElliott
Squad number9Player nameNúñez
Squad number10Player nameMac Allister
Squad number18Player nameGakpo
Squad number66Player nameAlexander-Arnold
Line-ups
Arsenal
Formation 4-3-3
- 1Ramsdale
- 4White
- 2SalibaBooked at 65mins
- 6Gabriel
- 15KiwiorSubstituted forTrossardat 88'minutes
- 8Ødegaard
- 41Rice
- 20JorginhoSubstituted forNketiahat 81'minutes
- 7Saka
- 29HavertzSubstituted forSmith Roweat 88'minutes
- 24NelsonSubstituted forMartinelliat 62'minutes
Substitutes
- 10Smith Rowe
- 11Martinelli
- 14Nketiah
- 17Cédric Soares
- 19Trossard
- 22Raya
- 63Nwaneri
- 72Sousa
- 76Walters
Liverpool
Formation 4-3-3
- 1Alisson
- 66Alexander-ArnoldBooked at 90mins
- 5Konaté
- 78Quansah
- 2Gomez
- 19ElliottBooked at 70minsSubstituted forBradleyat 75'minutes
- 10Mac AllisterSubstituted forGravenberchat 59'minutesBooked at 90mins
- 17JonesSubstituted forClarkat 75'minutesBooked at 90mins
- 18GakpoSubstituted forJotaat 59'minutes
- 9Núñez
- 7Díaz
Substitutes
- 20Jota
- 38Gravenberch
- 42Clark
- 44Chambers
- 49Gordon
- 53McConnell
- 62Kelleher
- 84Bradley
- 98Nyoni
Referee:John Brooks
Attendance:58,538
Live Text
Match ends, Arsenal 0, Liverpool 2.
Second Half ends, Arsenal 0, Liverpool 2.
Goal! Arsenal 0, Liverpool 2. Luis Díaz (Liverpool) right footed shot from the right side of the box to the top right corner. Assisted by Diogo Jota following a fast break.
Trent Alexander-Arnold (Liverpool) is shown the yellow card for a bad foul.
Leandro Trossard (Arsenal) wins a free kick in the defensive half.
Foul by Trent Alexander-Arnold (Liverpool).
Corner, Arsenal. Conceded by Conor Bradley.
Bobby Clark (Liverpool) is shown the yellow card for a bad foul.
Declan Rice (Arsenal) wins a free kick in the defensive half.
Foul by Bobby Clark (Liverpool).
Corner, Arsenal. Conceded by Darwin Núñez.
Ryan Gravenberch (Liverpool) is shown the yellow card for a bad foul.
Martin Ødegaard (Arsenal) wins a free kick in the attacking half.
Foul by Ryan Gravenberch (Liverpool).
Substitution, Arsenal. Leandro Trossard replaces Jakub Kiwior.
Substitution, Arsenal. Emile Smith Rowe replaces Kai Havertz.
Foul by William Saliba (Arsenal).
Diogo Jota (Liverpool) wins a free kick on the left wing.
Attempt blocked. Kai Havertz (Arsenal) header from the centre of the box is blocked. Assisted by Martin Ødegaard with a cross.
Bukayo Saka (Arsenal) wins a free kick on the right wing.