The Republic of Ireland international was signed by Steve Bruce in 2011 but did not get the chance to play on a regular basis until Martin O'Neill came to the Stadium of Light.
McClean appeared to fall out of favour under new boss Paolo Di Canio and, with a large influx of new blood on Wearside this summer, he has been allowed to move on.
McClean, who becomes Owen Coyle's tenth signing of the summer transfer window, said: "I'm delighted to be signing, it's happened very quickly but as soon as I found out the gaffer was interested I wanted to come.
"You can see this is a club moving in the right direction again and I can't wait to be a part of that.
"I know James McCarthy very well and he's said only good things about the place so I'm really looking forward to getting started and meeting everyone."
McClean, 24, is in Giovanni Trapattoni's squad to face Wales in Cardiff next week together with McCarthy.