Clouds and hazes are commonplace in the atmospheres of solar system planets and are likely ubiquitous in the atmospheres of extrasolar planets as well. Clouds affect every aspect of a planetary atmosphere, from the transport of radiation, to atmospheric chemistry, to dynamics and they influence - if not control - aspects such as surface temperature and habitability. In this review we aim to provide an introduction to the role and properties of clouds in exoplanetary atmospheres. We consider the role clouds play in influencing the spectra of planets as well as their habitability and detectability. We briefly summarize how clouds are treated in terrestrial climate models and consider the far simpler approaches that have been taken so far to model exoplanet clouds, the evidence for which we also review. Since clouds play a major role in the atmospheres of certain classes of brown dwarfs we briefly discuss brown dwarf cloud modeling as well. We also review how the scattering and extinction efficiencies of cloud particles may be approximated in certain limiting cases of small and large particles in order to facilitate physical understanding. Since clouds play such important roles in planetary atmospheres, cloud modeling may well prove to be the limiting factor in our ability to interpret future observations of extrasolar planets.