(Excerpted from an earlier version of a study guide to logic texts more generally -- you will find the latest version here: http://www.logicmatters.net/students/tyl/)
Mere lists are fairly uninteresting and unhelpful. So let's be a bit more selective!
We should certainly distinguish books covering the elements of set theory – the beginnings that anyone really ought to know about – from those that take on advanced topics such as ‘large cardinals’, proofs using forcing, etc.
On the elements, two excellent standard ‘entry level’ treatments are
Herbert B. Enderton, The Elements of Set Theory (Academic Press,
1997) is particularly clear in marking off the informal development
of the theory of sets, cardinals, ordinals etc. (guided by the
conception of sets as constructed in a cumulative hierarchy) and the
formal axiomatization of ZFC. It is also particularly good and
non-confusing about what is involved in (apparent) talk of classes
which are too big to be sets – something that can mystify beginners.
Derek Goldrei, Classic Set Theory (Chapman & Hall/CRC 1996) is
written by a staff tutor at the Open University in the UK and has the
subtitle ‘For guided independent study’. It is as you might expect
extremely clear, and is indeed very well-structured for independent
reading.
Still starting from scratch, and initially only half a notch up in sophistication, we find two more really nice books (also widely enough used to be considered "standard", whatever exactly that means):
Karel Hrbacek and Thomas Jech, Introduction to Set Theory (Marcel
Dekker, 3rd edition 1999). This goes a bit further than Enderton or
Goldrei (more so in the 3rd edition than earlier ones). The final chapter gives a remarkably accessible glimpse
ahead towards large cardinal axioms and independence proofs.
Yiannis Moschovakis, Notes on Set Theory (Springer, 2nd edition 2006). A slightly more individual path through the material than the previously books mentioned, again with glimpses ahead and again attractively written.
My next recommendation might come as a bit of surprise, as it is something of a ‘blast from the past’: but don’t ignore old classics: they can have a lot to teach us even if we have read the modern books:
- Abraham Fraenkel, Yehoshua Bar-Hillel and Azriel Levy, Foundations of Set-Theory (North- Holland, 2nd edition 1973). This puts the development of our canonical ZFC set theory into some context, and also discusses alternative approaches. It really is attractively readable. I’m not an enthusiast for history for history’s sake: but it is very much worth knowing the stories that unfold here.
One intriguing feature of that last book is that it doesn’t at all emphasize the ‘cumulative hierarchy’ – the picture of the universe of sets as built up in a hierarchy of levels, each level containing all the sets at previous levels plus new ones (so the levels are cumulative). This picture – nowadays familiar to every beginner – comes to the foreground again in
- Michael Potter, Set Theory and Its Philosophy (OUP, 2004). For mathematicians concerned with foundational issues this surely is – at some stage – a ‘must read’, a unique blend of mathematical exposition (mostly about the level of Enderton, with a few glimpses beyond) and extensive conceptual commentary. Potter is presenting not straight ZFC but a very attractive variant due to Dana Scott whose axioms more directly encapsulate the idea of the cumulative hierarchy of sets.
Turning now to advanced topics Two books that choose themselves as classics are
Kenneth Kunen, Set Theory (North Holland, 1980), particularly for independence proofs.
Thomas Jech, Set Theory: The Third Millenium Edition (Springer 2003), for everything.
And then there are some wonderful advanced books with narrower focus (like Bell's on Set Theory: Boolean Valued Models and Independence Proofs). But this is already long enough and in fact, if you can cope with Jech's bible, you'll be able to find your own way around the copious literature!
Set theory is absolutely necessary to learn more advanced mathematics. It is needed for just about every branch of mathematics, if not every branch. In my opinion, it would be a good idea to start learning some basic set theory notions at least. It will definitely show up in classes like real analysis, complex analysis, and probability just to name a few. Most likely, those undergrad courses will introduce you to some of the theory but to start learning on your own definitely won't hurt. There are numerous resources out there available for learning by yourself. Good luck!
Best Answer
Peter Smith has a very good book list on his "Teach Yourself Logic" page. There is also a nice set of lecture notes by Stephen Simpson located here: "Foundations of Mathematics" (PDF).
One question that you should clarify for your own benefit is whether you are interested in learning about foundations of mathematics, or about set theory. Set theory is an important tool in the field of foundations of mathematics, and it is also a topic of study in its own right. So, for example, well-regarded books such as Kunen's Set Theory: An Introduction to Independence Proofs and Jech's Set Theory will teach you a lot of set theory, but they will not teach your much about foundations of mathematics.
If you are genuinely interested in foundations of mathematics, the literature list is more difficult, because the topics are spread around many fields of math, and there is no single reference that will contain everything, much less present a coherent view of foundations.
If you are interested in the role set theory plays in foundations (compared to the study of set theory for its own sake), one very nice book is Foundations of Set-Theory by Abraham Fraenkel, Yehoshua Bar-Hillel and Azriel Levy. Levy's book Basic Set Theory is actually a graduate level text, is also very good at emphasizing foundational issues, and is now available from Dover.