Your understanding is almost correct Samy.
CTRL – yep. There’s no prefix on those. They are the ONLY bones that the animator will interact with. They do not deform the mesh although you can bone parent objects to them.
DEF – these DO have a prefix. They are used to deform the mesh. They don’t need the prefix to achieve that, but we use that naming convention to reduce cognitive load and set up the most commonly used convention.
MCH – These will do whatever they need to. They could be a parent, or a child, hold a constraint, or be a target for a constraint. They are the Swiss Army Bone of rigging. If you are referring to the Limbs in this rig – then the MCH bones hold the IK constraint chain that does the stretching (and IK obviously). The DEF bones then tag along for the ride but we set it up in a way that avoids them scaling on all 3 axes which would happen if you tried to use the IK directly on those bones.
Here is that simple video that breaks down these concepts.
https://www.cgcookie.com/lessons/01-rigging-concepts-in-a-nutshell