Aiden O’Brien scored a late winner as Millwall fought back twice from a goal down to overcome Plymouth Argyle in their Carabao Cup clash.

Shaun Williams converted a penalty past the hour mark to cancel out a Jamie Ness header which fired the visitors into the lead minutes before half-time.

Former Crystal Palace striker Freddie Ladapo scored Plymouth’s second, only for Lee Gregory to reply, before O’Brien popped up with the decisive finish.

With Millwall through to the third round of the Carabao Cup, they could be drawn with rival London clubs Brentford, Fulham, and Queens Park Rangers who also won.

The Lions have recovered from the back-to-back defeats they suffered in Yorkshire away to Sheffield Wednesday and Rotherham United.

Neil Harris made several changes to the team which was defeated 1-0 by the Millers at the weekend, with Jem Karacan starting his first game since re-joining the club.

It took a while for the game to spring into life, but Ness found his way through early on only to be denied by the feet of Ben Amos.

However, he would be rewarded for his efforts when he found the net on 41 minutes to stun Millwall shortly before the break.

The Lions responded in the second 45 minutes to see Murray Wallace glance his own header just over from a Shane Ferguson cross.

Harris introduced Jed Wallace for debutant Karacan before the hosts would be awarded a penalty when Tom Elliott was brought down inside the box.

Williams scored from 12 yards out to grab the equaliser, though it only lasted three minutes as Ladapo beat Amos with a neat finish into the bottom corner.

Gregory and O’Brien soon entered the fray, with the former heading home from close range to level the scores again.

And the latter got the hosts’ noses in front for the first time in the match in the 89th minute when he lost his marker for a decisive finish.

Plymouth brought on one final substitute during injury time but the Lions got through the hard way.