"Joining Bath at the end of hopefully a successful season with Western Province will represent a new beginning for me and an opportunity to grow and experience the game in the top echelons of northern hemisphere rugby," said Watson.
"I'm obviously sad to be leaving Western Province, where I have enjoyed my time immensely, but I'm looking forward to the new challenge that this opportunity will bring."
Watson made his Currie Cup debut for Eastern Province at the age of 18. Saturday's game against the Lions was his 61st appearance for Eastern Province, the Sharks and Western Province.
He made his Super Rugby debut for the Sharks in 2003 and has played 81 times in the tournament. He made his Springbok debut in 2007.