What is the difference between Ball Socket Joint and Hinge Joint?

The difference between Ball Socket Joint and Hinge Joint is that the former permits free movement in all directions whereas the latter permits movement in one plane only.