The 22-year-old forward only scored two goals in his time at Vicarage Road and will look to make a much more significant impression in Turin, where he will link up with former Milan boss Sinisa Mihajlovic.
"I'm happy to be a Torino player," Niang told the club's official website.
"What I was hoping for has been realised, I want to thank everyone for making this happen. I wanted to come here because I feel everyone's trust, and that's very important.
"After that it’s no secret that I have an excellent relationship with Mihajlovic. I expect to do well in the league and the Coppa Italia, the objective is to go as high as possible with this shirt."
Meanwhile, Argentine striker Maxi Lopez has left Torino for Udinese.