I have used snapfish a lot and have always been really happy.

As BG mentioned, they can be particularly well priced when on sale. I tend to make up a book, leave it sitting in 'my projects' then order it when I see a deal come up (% off or 2 for 1)