Hard congestion is not caused by HW failure. It is caused by sheer lack of timeslots of any kind to serve the incoming call, resulting in the subscriber having to redial.
Soft congestion is caused by the system having to re-allocate capacity in order to serve an incoming call. Usually it is the Ps timeslots that are released, in order to make room for CS timeslots.
Additionally, soft congestion might be synonymous with incoming handover congestion : the incoming HO is rejected because not enough capacity in the target cell. However the call is maintained in the source cell. That’s not a direct impact on subscriber.