Uploading sketch to ATMega168 on breadboard Issue

I asked a different question the other day, but I think this is the root of my problem. I have the ATMega168 microcontroller hooked up to my breadboard and have verified that I can run sketches if I first upload the sketch while the chip is plugged into the Arduino shield. Then I can take the microcontroller off and place it onto the breadboard and it will run the sketch fine. However, I don't want to keep removing the microcontroller from the breadboard everytime I want to make changes to my sketches. I read tutorials how to connect the RX, TX, Reset, Ground, and 5V from the shield to the breadboard. However, when I try uploading a sketch I get the following error message:

avrdude: stk500_recv(): programmer is not responding

This happens 10 times, then it quits and says it can't upload to the board. I've read solutions where people say to hit the reset button at a specific time, changing your port, changing the programmer, none of it is working for me. Any help would be appreciated. Thanks!

(deleted)

This may sound stupid, but in all of the tutorials they are using 16 MHz crystals and I am using a 20 MHz crystal. Would that be the reason it isn't uploading?

(deleted)

Ordered the 16 MHz crystals, and it works now. So yeah, I learned something. Thanks!

Note that if you were to compile the bootloader for 20mhz, and compile your sketch for 20mhz, it would work.

(Also - you're going to need to wire up DTR autoreset to upload the second sketch, unless you want to carefully time the pressing of reset to upload.... )

Thanks DrAzzy, that's good to know. I'm a newbie and have a lot to learn. Using the 16 MHz I haven't had any troubles uploading new sketches and haven't had to press any buttons like reset while uploading.