There are two approaches to category theory, most books, such as those under 'expert' below assume quite a wide knowledge of mathematics. They give lots of examples from different structures to help the reader to 'abstract out' the categorical concepts.
The following two books, both co-authored by F. William Lawvere, are aimed at relative newcomers to mathematics. Although they are not trivial and I think they are useful for a wide range of readers.
|Conceptual Mathematics - This is a book about category theory that does not assume an extensive knowledge over a wide area of mathematics. The style of the book is a bit quirky though.|
|Sets for Mathematics - This is a book about sets from category theory point of view.|
|Categories for the Working Mathematician - This is the classic book on the subject but the pace is very quick and a wide knowledge of mathematics is required to understand the examples. Its hard going for me but then I'm not a working mathematician.|
|Categorical Theory - This book is a general introduction to the subject, a bit easier than the Saunders Mac Lane book but still very theoretical.|
Category Theory and Logic
|Introduction to Higher Order Categorical Logic - Lambek & Scott - Relates lambda calculus to higher order logic and cartesian closed categories.|
Category Theory and Type Theory
|Categorical Logic and Type Theory - This book is about logic, type theory and category theory. It assumes the reader is familiar with category theory concepts such as adjunctions, limits and CCCs.|
|Categories for Types - The book has some introductory material including a chapter about category theory (although it would be a steep learning curve with no other sources). Then the book shows how to represent category theory in type theory.|