Wherever there is group life, there has been a social division of labor and resource allocation, since ancient times. Examples include ant colonies, bee colonies, and wolf colonies. Different roles are responsible for different tasks. The same is true of human beings. Human beings are the largest social group in nature, among whom there are intricate social networks and interest networks between individuals. In such a complex relationship, how do decision makers allocate resources or tasks to individuals in a fair way? This is a topic worthy of further study. In recent decades, fair allocation has been at the core of research in economics, mathematics and other fields. The fair allocation problem is to assign a set of items to a set of agents so that each agent’s allocation is as fair as possible to satisfy each agent. The fairness measurements followed in current research include envy-freeness, proportionality, equitability, maximin share fairness, competitive equilibrium, maximum Nash social diswelfare, and so on. In this paper, the main concern is the allocation of chores. We discuss this problem in two parts: divisible and indivisible. We comprehensively review the existing results, algorithms, and approximations that meet various fairness criteria in chronological order. The relevant results of achieving fairness and efficiency are also discussed. In addition, we propose some open questions and future research directions for this problem based on existing research.