The Premier League champions were in the lead at half-time through a Mario Balotelli effort, but a Gareth Barry own goal on the hour mark levelled things up.
Aleksander Kolarov put the hosts into the lead once more soon after but Gabriel Agbonlahor equalised to send the game to extra time.
Two additional strikes from Charles N’Zogbia and Agbonlahor secured a famous win for the Midlands visitors, and Roberto Mancini has apologised for the performance of his side.
“I am very sorry for the players, I am very sorry for the club and for the supporters,” he told Sky Sports.
“We didn’t want to go out of this competition, we wanted to win this competition. We didn’t play well, Aston Villa played better than us.”
Villa boss Paul Lambert was delighted with his side’s showing and hailed his triumphant players.
“I think we have been playing very well of late. The second half at Southampton wasn’t good enough.
“Since the Tranmere game, against Newcastle and Swansea, I thought we played really well. We have been playing OK at the minute.
“Coming here, it doesn’t matter what tournament it is, it is a massive result for us,” the Scot concluded.
By Gareth McKnight