Checkpointing is a fault-tolerance technique used in computing to save the state of a system or application at specific points, allowing it to be restarted from the last saved state in case of failure. This process minimizes data loss and computational overhead by avoiding the need to restart computations from the beginning.