Swansea is a town in Bristol County in southeastern Massachusetts. It is located at the mouth of the Taunton River, just west of Fall River, 47 mi south of Boston, and 12 mi southeast of Providence, Rhode Island. The population was 17,144 at the 2020 census. The villages of Hortonville, Barneyville and Ocean Grove are located in the town.