For what it's worth, my vote would be for Learn C The Hard Way. Not having learned C in any formal setting and coming from a background of mainly interpreted languages, I've found it quite difficult to determine reliable, up to date resources for learning C. It's not that there's none around obviously, it's just hard to know which stuff to go with and hard to find something in between complete n00b and full master, which is what I'd be hoping for.
"hard to find something in between complete n00b and full master" - My theory is that the best technical books or books for learning are the "intermediate" ones.
There are usually a ton of acceptable beginner's books and then very specialized and complex books but very few good "intermediate" books like the favorites:
- TCP/IP ilustrated
- Perl Camel book
- R&K C book
- Silman's groundbreaking chess books
- Harrington's groundbreaking poker books