Leroy Lita spared Reading's blushes at League One Swansea to send the Royals into the Carling Cup third round.
Lita nudged in Dave Kitson's cross at the end of the first period of extra-time at the Liberty Stadium.
Swansea dominated the closing stages, a superb Adam Federici save denying Ian Craney before Angel Rangel hit the bar.
Reading's Sam Sodje had been sent off after 58 minutes for two bookings, but Swansea failed to converted their half chances to make the visitors pay.
Swansea: De Vries, Austin, Lawrence, Monk, Rangel,
O'Leary (Duffy 73), Robinson (Britton 49), Anderson, Craney,
Bauza (Scotland 73), Allen.
Subs Not Used: Amankwaah, Butler.
Reading: Federici, Halls (Golbourne 99), De la Cruz, Duberry,
Sodje, Cisse, Harper, Convey (Cox 100), Fae, Lita (Pearce 120),
Subs Not Used: Andersen, Church.
Sent Off: Sodje (58).
Booked: Sodje, Halls, Cisse, Fae.
Goals: Lita 105.
Ref: Kevin Friend (Leicestershire).