The course aims to introduce the basic theory of modular forms and related topics. We will talk about the definition of modular forms, their q-expansions, Hecke operators, L-functions, modular curves, and some interesting applications. If time permits, we shall talk about some advanced topics, in the end, depending on the interests of the students. Basic knowledge of complex analysis is requested.