This book is an introduction to the theory, practice, and implementation of the Lattice Boltzmann (LB) method, a powerful computational fluid dynamics method that is steadily gaining attention due to its simplicity, jednoczybility, extensibility, and simple handling of complex geometries. The book contains chapters on the method's background, fundamental theory, advanced extensions, and implementation.To aid beginners, the most essential paragraphs in each chapter are highlighted, and the introductory chapters on various LB topics are front-loaded with special "in a nutshell" sections that condense the chapter's most important practical results. Together, these sections can be used to quickly get up and running with the method. Exercises are integrated throughout the text, and frequently asked questions about the method are dealt with in a special section at the beginning. In the book itself and through its web page, readers can find example codes showing how the LB method can be implemented efficiently on a variety of hardware platforms, including multi-core processors, clusters, and graphics processing units. Students and scientists learning and using the LB method will appreciate the wealth of clearly presented and structured information in this volume.