Time and time again, Working Effective with Legacy Code comes up in conversations that I have with like minded fellows. It is a very good guide to working with code, not necessarily legacy one. I have read it a few years ago, and have been vastly impressed, to quote myself:
Working Effectively with Legacy Code is a book that should be a mandatory reading for anyone who is interested in coding for a living.
I consider this book the #1 reason for the existence of Rhino Mocks, and I can't really recommend it heartily enough.
If you haven't read it yet, go and get it.
That and Evans' DDD are on my list of books to re-read, but I am saving that for when I need a serious productively boost. That is one hell of a book to set me off writing good code.