There seems to be a lot of energy around an anti-w3schools movement. Here's an example of a website that holds no punches:
I'm not convinced that amount of hate is deserved, but some of the points they make are valid.
As for the original question, I have been a fan of the "Head First" book line for a while now. Lots of pictures, very easy writing style, gracefully takes you into the subject matter. Very well done series of programming books.