The physical roots, interpretation, controversies, and precise meaning of the Landauer principle are surveyed. The Landauer principle is a physical principle defining the lower theoretical limit of energy consumption necessary for computation. It states that an irreversible change in information stored in a computer, such as merging two computational paths, dissipates a minimum amount of heat kBTln2 per a bit of information to its surroundings. The Landauer principle is discussed in the context of fundamental physical limiting principles, such as the Abbe diffraction limit, the Margolus–Levitin limit, and the Bekenstein limit. Synthesis of the Landauer bound with the Abbe, Margolus–Levitin, and Bekenstein limits yields the minimal time of computation, which scales as τmin~hkBT. Decreasing the temperature of a thermal bath will decrease the energy consumption of a single computation, but in parallel, it will slow the computation. The Landauer principle bridges John Archibald Wheeler’s “it from bit” paradigm and thermodynamics. Experimental verifications of the Landauer principle are surveyed. The interrelation between thermodynamic and logical irreversibility is addressed. Generalization of the Landauer principle to quantum and non-equilibrium systems is addressed. The Landauer principle represents the powerful heuristic principle bridging physics, information theory, and computer engineering.