Lithium-ion batteries are widely recognised as the leading technology for electrochemical energy storage. Their applications in the automotive industry and integration with renewable energy grids highlight their current significance and anticipate their substantial future impact. However, battery management systems, which are in charge of the monitoring and control of batteries, need to consider several states, like the state of charge and the state of health, which cannot be directly measured. To estimate these indicators, algorithms utilising mathematical models of the battery and basic measurements like voltage, current or temperature are employed. This review focuses on a comprehensive examination of various models, from complex but close to the physicochemical phenomena to computationally simpler but ignorant of the physics; the estimation problem and a formal basis for the development of algorithms; and algorithms used in Li-ion battery monitoring. The objective is to provide a practical guide that elucidates the different models and helps to navigate the different existing estimation techniques, simplifying the process for the development of new Li-ion battery applications.