Whether or not a course is a hard really depends on the program and the students within them. However, there are still classes where majority of students struggle or an intensive course where procrastination is unforgiving. Here are 10 of the hardest courses at U of T, either for you take a challenge or avoid them like the plague and save your GPA.

1. ROP 299 Research Opportunity Program

ROP is a research opportunity program that offer second year students in the Faculty of Arts & Science to work closely with a professor on a research project in return for a course credit. Students have the opportunity to be involved in original research and can gain valuable experience and knowledge. What makes it difficult is being able to get offer a position for the course, as it is very competitive with limited spots. To get in the program, students are usually required to have an outstanding GPA. But getting in the program is just the beginning. ROP projects usually require a huge amount of time and dedication, and you also write a good amount of papers too.

2. STA 410/2102 Statistical Computation

Statistical computation is a course about computational techniques used in statistical inference. To excel or pass the class, significant programming experience and a graduate level understanding of stats seems necessary. The class begins with a full enrollment but ends with less than half of the students taking the exam. However, the course is very useful for students in statistic majors, so if you’re up for a challenge it’s always worth a shot.

This math course is completely theoretical and proof heavy based with little to no computational math. You are expected to memorize around a hundred proofs to big theorems. MAT135/136 do not prepare you for MAT 257 at all. A portion of the class will use theory from differential forms. It is a difficult class to gain mathematical maturity. But if you’re interested in math theories and proofs, then the course maybe somewhat manageable.

4. MAT 357 Foundations of Real Analysis

Students who successfully passed MAT257 usually go on to MAT357. However more than half of the class end of dropping MAT 357. Even students who have done well in MAT 257 ends up either dropping the course or did poorly on the final exam. Quizzes and assignments are not as easy as they were in the 100-levels and the course requires a good amount of time investment to pass. In order to do well, the best preparation is to start reading the textbook, understanding the concepts and practicing the problems over and over before school even begins.

PSL 300 includes a lot of memorization with many detailed information thrown at you all at once. If you don’t procrastinate and is good at keeping up with readings and materials given during lectures, you’re more likely to struggle less. Fortunately, the course has been getting easier and easier over the recent years.

6. CIV102 Structures and Materials – An Introduction to Engineering Design

Never underestimate a 100-level course as it can be overwhelming for incoming first years who are adjusting to whole new academic system. CIV 102 is probably the hardest course for first year in Engineering Science with the amount of content and information it has. Even though this course is equivalent to many upper year courses, it is important to remember that these 100- level courses are usually taken by students who are not prepared with the amount of work load to start university.

7. PHY 294 Quantum and Thermal Physics

A second year hard course for Engineering Science is PHY 294. This year course is split into two topics. The first half of the semester is about development of quantum mechanic while the other half focuses on classical statistical mechanics and radiation. It is conceptually more difficult and requires a good amount of time commitment in order to pass.

8. ECO 100 Introductory Economics

Another 100-level course that should not be under looked is introductory Economics. Many first years enter the course confidently thinking that it will be similar to high school economics. However, the concepts in ECO100 are more abstract thus people try to memorize rather than applying it to a set of fundamental concepts. The course includes both micro and macro is one full year unlike other universities in Ontario where they split micro and macro into two separate courses.

**9. CSC265 Enriched Data Structures and Analysis**

This course is very mathematical in nature as it requires a significant amount of deep understanding on how to write good mathematical proofs. The course doesn’t only teach pure theory but also practical knowledge about algorithms and data structures. However, if you think you can handle a good amount of proofs and feel confident in your math abilities, it’s always worth a shot as this course is very useful and helpful in preparation for 300/400 level classes.

Unlike PHL 245 which teaches logical/critical thinking, PHL 345 is all about theorems of modal logic requiring students with an intermediate level of understanding in logic. The assignments and midterm are harder but the final exam is more forgiving. To do well in this course, it requires a good amount of time commitment and effort as an assignment typically take around 10 hours each.