Actually, your first answer was correct in a way: you don't leave the fields blank, but you can set them all to 0 in Dashboard --> Seetings --> Media. This will only upload the image in the original size, where you have to click on it again and resize it to, let's say, 60%, or you can manually insert the width="X" height="Y" attributes inside the HTML code.
But, let's put all that aside for a moment. My question is this: doesn't anybody find this multiple uploading... downright stupid?
I mean, I'm no programmer at all, but even I see how dumb this is. I upload a picture in original size, let's say it's 640x480. But I want to display in 400x220 in my post so I'll add the width="420" height="220" attributes.
The code would look like this:
<img class="aligncenter size-medium wp-image-6529" title="man woman wall 05" src="http://coolawesomemovies.com/wp-content/uploads/2011/09/man-woman-wall-05.jpg" alt="" width="400" height="220" />
This would mean "show the 640x320 original sized image in 400x220".
But what WP does is create a copy of my picture in all sizes, and then inserts the following code into my post:
<img class="aligncenter size-medium wp-image-6529" title="man woman wall 05" src="http://coolawesomemovies.com/wp-content/uploads/2011/09/man-woman-wall-05-400x220.jpg" alt="" width="400" height="220" />
Instead of saying "show the 640x320 original sized image in 400x220", this basically says "show the image already resized to 400x220, which is stored as a standalone copy of the original image on your server, in 400x220".
I mean... WHAT?! This has to be one of the dumbest things I've ever seen, and not to say what it'll do towards cluttering your server. The person who came up with this in the first place should be shot.