Hard limits are those of the physical machines limit switches.
Soft limits are virtual ones set up to match a slight / reasonable inset of the machine’s working area — the idea is that if a movement would go beyond such a distance it must be in error, so better to stop rather than actually crash.