This text-based on the author's popular courses at Pomona College-provides a readable, student-friendly, and somewhat sophisticated introduction to abstract algebra. It is aimed at sophomore or junior undergraduates who are seeing the material for the first time. In addition to the usual definitions and theorems, there is ample discussion to help students build intuition and learn how to think about the abstract concepts. The book has over 1300 exercises and mini-projects of varying degrees of difficulty, and, to facilitate active learning and self-study, hints and short answers for many of the problems are provided. There are full solutions to over 100 problems in order to augment the text and to model the writing of solutions. Lattice diagrams are used throughout to visually demonstrate results and proof techniques. The book covers groups, rings, and fields. In group theory, group actions are the unifying theme and are introduced early. Ring theory is motivated by what is needed for solving Diophantine equations, and, in field theory, Galois theory and the solvability of polynomials take center stage. In each area, the text goes deep enough to demonstrate the power of abstract thinking and to convince the reader that the subject is full of unexpected results.