User deactivation versus deletion
Key Takeaway
You can't delete a user, so you deactivate them: this removes login access, keeps their records and history, and frees their user license. Freezing also blocks login, but it does not free the license.
Salesforce does not let you delete a user, so you deactivate the user instead. Deactivation removes their login access but keeps their records and history, so you can hand their work to someone else. When something blocks deactivation, you freeze the user first to block login, fix the blocker, and then deactivate the user.
Why you can't delete a user
You can deactivate a user, but you can't delete one outright. A user can own accounts, leads and groups and can be on several teams, so deleting them could leave orphaned records and lose critical business information.
Deactivation avoids that problem: it removes the user's login access but preserves all of their historical activity and records.