Understanding the ruling principles whereby protein receptors recognize, interact, and associate with molecular substrates and inhibitors is of paramount importance in drug discovery efforts. Protein–ligand docking aims to predict and rank the structure(s) arising from the association between a given ligand and a target protein of known 3D structure. Despite the breathtaking advances in the field over the last decades and the widespread application of docking methods, several downsides still exist. In particular, protein flexibility—a critical aspect for a thorough understanding of the principles that guide ligand binding in proteins—is a major hurdle in current protein–ligand docking efforts that needs to be more efficiently accounted for. In this review the key concepts of protein–ligand docking methods are outlined, with major emphasis being given to the general strengths and weaknesses that presently characterize this methodology. Despite the size of the field, the principal types of search algorithms and scoring functions are reviewed and the most popular docking tools are briefly depicted. Recent advances that aim to address some of the traditional limitations associated with molecular docking are also described. A selection of hand-picked examples is used to illustrate these features. Proteins 2006. © 2006 Wiley-Liss, Inc.