Showcasing the essential principles behind modern communication systems, this accessible undergraduate textbook provides a solid introduction to the foundations of communication theory. Carefully selected topics introduce students to the most important and fundamental concepts, giving students a focused, in-depth understanding of core material, and preparing them for more advanced study. Abstract concepts are introduced to students 'just in time' and reinforced by nearly 200 end-of-chapter exercises, alongside numerous MATLAB code fragments, software problems and practical lab exercises, firmly linking the underlying theory to real-world problems, and providing additional hands-on experience. Finally, an accessible lecture-style organisation makes it easy for students to navigate to key passages, and quickly identify the most relevant material. Containing material suitable for a one- or two-semester course, and accompanied online by a password-protected solutions manual and supporting instructor resources, this is the perfect introductory textbook for undergraduate students studying electrical and computer engineering.