I was just having this conversation with some colleagues the other day. Without a doubt, Code Complete tops the list for me, though admittedly I have not read it cover to cover, nor do understand or even implement everything in it. But it's great.
Also:
TAOCP - I'm one of the few programmers out there who will sacrifice my ego and admit there is a lot of it I don't understand completely. But it really is a timeless and valuable book.
Code Complete - Can be applied to programming in many different languages and offers a fresh way of looking at problems.
The Mythical Man Month - Ok, so not as technical but amazingly accurate in discussing software projects and how they progress in real life.
Object Oriented Thought Process (Matt Weisfeld) - This isnt as well known, but was my first introduction to true OOP programming, and offers a clear, concise explanation of it.
K&R - A little dated, but the concepts are still great. Not exactly a beginner book and focused on C, but could be applied to just about any language to make you solve problems better.
Newer Stuff
Anything Deitel - These books are expensive but incredibly detailed and packed with great information.
Head First Design Patterns - I already had a good understanding of them previous to reading the book, but had I read it first I would have much smarter, much earlier.