Asoro played for the Black Cats during their ill-fated 2017/18 Championship season when they were relegated, scoring three goals and contributing an assist in 26 league games.
Swansea announced the signing via a statement on their website. It reads: "Swansea City have completed the signing of Sunderland forward Joel Asoro for an undisclosed fee.
"The 19-year-old has agreed a four-year contract at the Liberty Stadium after the Swans won the race for his signature.
"Asoro is capable of playing either up front or out wide, and will bring pace and quality to Graham Potter’s forward line. The Swans boss has long been an admirer of Sweden Under-21 international Asoro, who hails from Stockholm."
The fee is expected to be around £2m, with Sky Sports reporting earlier in the week that Asoro was undergoing a medical in Wales. He had one year left on his deal with Sunderland but rejected the offer of a new contract.