To be honest, for me the best way to learn is to get hands on. Try and solve something simple and work your way up. Even the simple ones will teach you new thigns.
The books will give you solid principles but spending a few weeks with Olly/IDA will help most.
After that, some of these books can help you understand things like PEB/SDT/IDT etc which dont often get covered in tutorials (unless you read deroko's stuff

)