Since the second half of the 20th century, Pontryagin's Maximum Principle has been widely discussed and used as a method to solve optimal control problems in medicine, robotics, finance, engineering, astronomy. Here, we focus on the proof and on the understanding of this Principle, using as much geometric ideas and geometric tools as possible. This approach provides a better and clearer understanding of the Principle and, in particular, of the role of the abnormal extremals. These extremals are interesting because they do not depend on the cost function, but only on the control system. Moreover, they were discarded as solutions until the nineties, when examples of strict abnormal optimal curves were found. In order to give a detailed exposition of the proof, the paper is mostly self-contained, which forces us to consider different areas in mathematics such as algebra, analysis, geometry.