It is frequently asked about the difference between the above mentioned operations. It is indeed simple. Let us take the example of a cylinder and a box that you want to join together.
The \b partition operation will also connect the solids but it will <b>keep a face at the frontier</b> (in brown in the picture below). The resulting shape will consist of <b>two connected solids</b> that share
a face at their frontier. It means that this face is present only one time in the resulting shape and is a sub-shape of both the box and the cylinder.
\n This operation allows you to identify different areas in a shape (e.g. different materials) and to ensure a <b>conformal mesh</b> when meshing it later. Indeed the face at the frontier is meshed only once.
When you build a \b compound by using the Build -> Compound operation you just make <b>an object that contains two separate solids</b> like in a "bag".