Choosing between DISTINCT and VALUES in DAX

When should you use DISTINCT over VALUES in DAX?
Here is how to write resilient measures that survive bad data and model changes.