In the area of optimization, metaheuristic algorithms have attracted a lot of interest. For many centuries, human beings have utilized metaheuristic algorithms as a problem-solving approach. The application of these methods to combinatorial optimization problems has rapidly become a growing area of research, incorporating principles of natural selection, evolution, and problem-solving strategies. While conventional software engineering methods may not always be effective in resolving software issues, mathematical optimization using metaheuristics can offer a solution. As a result, metaheuristics have become an increasingly important part of modern optimization, with a large number of algorithms emerging over the last two decades. The purpose of this study is to present a quick overview of these algorithms so that researchers may choose and use the best metaheuristic method for their optimization issues. The key components and concepts of each type of algorithm have been discussed, highlighting their benefits and limitations. This paper aims to provide a comprehensive review of these algorithms, including evolution-based methods, swarm intelligence-based, physics-based, human-related, and hybrid metaheuristics by highlighting their key components and concepts and comparing and contrasting their similarities and differences. This work also addressed some of the difficulties associated with metaheuristic algorithms. Some practical uses of these metaheuristic algorithms were addressed.