Membranes are formed from a bilayer containing diverse lipid species with which membrane proteins interact. Integral, membrane proteins are embedded in this bilayer, where they interact with lipids from their surroundings, whilst peripheral membrane proteins bind to lipids at the surface of membranes. Lipid interactions can influence the function of membrane proteins, either directly or allosterically. Both experimental (structural) and computational approaches can reveal lipid binding sites on membrane proteins. It is, therefore, important to understand the free energies of these interactions. This affords a more complete view of the engagement of a particular protein with the biological membrane surrounding it. Here, we describe many computational approaches currently in use for this purpose, including recent advances using both free energy and unbiased simulation methods. In particular, we focus on interactions of integral membrane proteins with cholesterol, and with anionic lipids such as phosphatidylinositol 4,5-bis-phosphate and cardiolipin. Peripheral membrane proteins are exemplified via interactions of PH domains with phosphoinositide-containing membranes. We summarise the current state of the field and provide an outlook on likely future directions of investigation.