Angle-resolved photoemission spectroscopy (ARPES) is one of the most direct methods of studying the electronic structure of solids. By measuring the kinetic energy and angular distribution of the electrons photoemitted from a sample illuminated with sufficiently high-energy radiation, one can gain information on both the energy and momentum of the electrons propagating inside a material. This is of vital importance in elucidating the connection between electronic, magnetic, and chemical structure of solids, in particular for those complex systems which cannot be appropriately described within the independent-particle picture. The last decade witnessed significant progress in this technique and its applications, thus ushering in a new era in photoelectron spectroscopy; today, ARPES experiments with 2 meV energy resolution and 0.2• angular resolution are a reality even for photoemission on solids. In this paper we will review the fundamentals of the technique and present some illustrative experimental results; we will show how ARPES can probe the momentum-dependent electronic structure of solids providing detailed information on band dispersion and Fermi surface, as well as on the strength and nature of those many-body correlations which may profoundly affect the one-electron excitation spectrum and, in turn, determine the macroscopic physical properties.