I agree that Introduction to the Theory of Computation by Sipser is good text, but I also recommend taking a look at the Stanford CS103 course page archive, which has a lot of great supplementary resources, including handouts, problem sets, and lecture notes.


The standard text is probably the Sipser book. It's fantastic, and the problem sets are quite intellectually rich.

Only top voted, non community-wiki answers of a minimum length are eligible