Complex analysis is one of the most attractive of all the core topics in an undergraduate mathematics course. Its importance to applications means that it can be studied both from a very pure perspective and a very applied perspective. This book takes account of these varying needs and backgrounds and provides a self-study text for students in mathematics, science and engineering. Beginning with a summary of what the student needs to know at the outset, it covers all the topics likely to feature in a first course in the subject, including: complex numbers, differentiation, integration, Cauchy's theorem, and its consequences, Laurent series and the residue theorem, applications of contour integration, conformal mappings, and harmonic functions. A brief final chapter explains the Riemann hypothesis, the most celebrated of all the unsolved problems in mathematics, and ends with a short descriptive account of iteration, Julia sets and the Mandelbrot set. Clear and careful explanations are backed up with worked examples and more than 100 exercises, for which full solutions are provided.