Catenate is the equivalent of Join but for Associations. Of course both were designed to interoperate as much as possible. The idea was to make the functions easy to use.
Catenate is useful because it always returns a list of simple objects. Join is a simpler operation which may return nested expressions containing other Lists or Associations.
If you're not using Associations, jut use Join. If you're using Associations you'll find Catenate handy.