Kevin McLeod struck twice for Swansea as the Welsh side proved too strong for Barnsley at the New Stadium.
Kevin McLeod struck twice for Swansea
The midfielder's right-foot rocket into the roof of the net gave the Swans the lead, then he settled any nerves in the 90th minute with a low left-foot shot.
Jacob Burns had equalised for Barnsley on 35 minutes, jinking through to score after Swansea failed to clear.
But Lee Trundle restored Swansea's lead in the second half with a fine curling free-kick into the top corner.
Swansea: Gueret, Ricketts, Austin, Tate, Iriekpen, Martinez (Robinson 66), Britton (O'Leary 66), McLeod, Tudur-Jones, Akinfenwa, Trundle (Connor 89). Subs Not Used: Murphy, Goodfellow.
Booked: Britton, Martinez, Akinfenwa, Tudur-Jones.
Goals: McLeod 14, Trundle 58, McLeod 90.
Barnsley: Colgan, Carbon, Austin, Kay, Shuker, Devaney (Williams 74), Burns, Tonge (McPhail 65), Wroe, Conlon (Nardiello 65), Hayes. Subs Not Used: Scarsella, Hassell.
Booked: Hayes, Devaney, Kay.
Goals: Burns 35.
Ref: S Tanner (Somerset).