I think the thread where I asked the same question (years ago) got wiped out in a raid array crash or some such event, but after making slow progress with web tutorials, I found "C Programming for Microcontrollers" by Joe Pardue to be extremely useful. It uses the AVR Butterfly for its examples, but it's easy to understand how they would apply to other AVR processors and boards. The version of AVR Studio referenced is a little dated at this point, but the essentials are there.
Anyway, it's available in various incarnations with or without hardware kits here, including as an e-book download. You can also check out some sample chapters which will get you going here.