Substance Designer
A node-based program mainly aimed at making procedural materials (as opposed to unique per-object texturing like in Painter). These materials can be exported and used directly in an engine (for example, you can make a tiling pavement material which will be directly applied to a ground plain in UE4) or imported to Painter or Alchemist for further use.
Substance Painter
A real-time texturing program used for unique 3D assets. It is akin to Photoshop, as you can paint and apply texturing on your asset using layers and layer effects. It allows for a non destructive approach - if you make good use of masks, you can substitute and tweak textures on the fly without having to re-do everything.
Substance Alchemist
The most recent addition to the suite. The program has two main uses: First, it has a strong AI which can quickly and easily turn simple photos into materials by generating all the necessary maps and textures. Second, it allows you to easily iterate on, as well as mix and match different materials through use of many filters and adjustments.
Pros
Unlimited resources - if learned together, Designer can be used to reinforce Painter with an unlimited number of materials, filters and generators. Alchemist can also aliment Painter and be alimented by Designer.
Procedural and non-destructive.
Powerful painting and texturing tools.
Free for students.
Cons
Designer is not an easy tool to learn.
Baking tools could use some improvement.
Learning Resources
Livestreams (artists' breakdowns)