The school timetabling problem (STP) is a well-known combinatorial optimization challenge that involves assigning a set of events, such as classes, teachers, rooms, and timeslots, while satisfying a complex set of constraints. Due to its nature, a wide range of algorithmic approaches have been developed to address this problem, including exact methods, heuristics, and metaheuristics. This paper presents a comparative study of several prominent algorithmic techniques used for school timetable generation, including constraint programming, genetic algorithms, simulated annealing, and tabu search. Each algorithm is evaluated based on expressiveness, adaptability, and practicality. Experiments are conducted on publicly available datasets and real-world school scheduling scenarios in Latvia. The results highlight the strengths and limitations of each approach and provide practical insights into their applicability for different types of school environments. Recommendations are provided for selecting appropriate algorithms based on specific problem characteristics and institutional requirements.