A tornado and a waterspout are very similar. They are both columns of rotating air. The difference is in where they form.
A tornado forms over land and is associated with severe thunderstorms. While waterspouts form over water.
A waterspout can be formed from a severe thunderstorm too. This is considered a tornadic waterspout. Basically, this is forming the same way a tornado does, except it does not form on land it forms over water. It can also be a tornado that formed on land but then it moves to the water. If it moves from land to water, it is then now considered a waterspout.
You can also have a fair weather waterspout. This is not associated with a thunderstorm. This forms on the surface of the water and makes its way upwards forming the shape of rotating water and mist. These types of waterspouts tend not to move much.