C Programming for Microcontrollers Featuring ATMEL's AVR Butterfly and the free WinAVR Compiler
The author (Electrical Engineer, Official Atmel AVR Consultant, and award winning writer) makes the sometimes-tedious job of learning C easier by often breaking the in-depth technical exposition with humor and anecdotes detailing his personal experience and misadventures.