UTD GAIN CUP REVENGE
Stephen Ireland went close for City early on but the hosts went ahead on 22 minutes through Ramon Castille after a mistake by Kasper Schmeichel.
City's Ian Bennett also shot wide before Heaton saved Bermingham's header and Onouha headed against the post.
Schmeichel denied United's Phil Picken but was again caught out as the Reds secured their passage into the next round midway through the second half.
Nathan D'Laryea seemed to have shepherded Heaton's long ball back to Schmeichel but United sub Callum Flanagan nipped in to head past the City keeper.
City: Schmeichel, Warrender, Collins, N D'Laryea, Onouha, Bennett, Laird (Reilly 62), J D'Laryea, Bermingham (Etuhu 90), Ireland, Logan (Miller 67)
Subs: Matthewson(GK), Richards
United: Heaton, Howard, Hogg, N'Galula, McShane, Jones (Spector 46), Picken, Martin (Marsh 76), Ebanks-Blake, Calliste (Flanagan 69), Eckersley
At Old Trafford