This is a clear, accessible and up to date exposition of modular representation theory of finite groups from a character-theoretic viewpoint. After a short review of the necessary background material, the early chapters introduce Brauer characters and blocks and develop their basic properties. The next three chapters study and prove Brauer's first, second and third main theorems in turn. The author then applies these results to prove a major application...