This study presents a fuzzy logic and binary-goal programming-based approach for solving the exam timetabling problem to create a balanced-exam schedule. To be able to address the practical challenges of the exam timetabling problem, the model is developed with and verified by a human expert for exam scheduling. We propose a fuzzy-criticality level identification methodology to assign the criticality levels of exams for the students using three pieces of information, namely, credits, success ratios, and types of the classes. It is noted that the computed criticality levels are close approximates for those of the human expert. We then present a goal programming model to schedule exams using these criticality levels as well as other general problem data. The result of the goal program is a balanced-exam schedule in terms of exam criticality levels. Final step includes room assignments using a simple algorithm. The significance of the study is the consideration of the exam criticalities, for not only the students of the same year but also the students with different levels of seniority, as well as an even distribution of exams for professors which make the problem more challenging for the human expert in practice. Using a real-life problem, we show that our approach creates an exam schedule that is more preferable than the one prepared by the human expert. Additionally, computational results show the potential of our model to be used in real-life problems of larger-size.