This document is a set of lecture notes on the lambda calculus. It covers topics such as the untyped and typed lambda calculus, the Church-Rosser theorem, combinatory algebras, the simply-typed lambda calculus and its connections to propositional logic via the Curry-Howard isomorphism, polymorphism, type inference, denotational semantics using complete partial orders, and the programming language PCF. The notes were developed from courses taught by the author at various universities.