Okay. I think I have almost everything I need to start some home recording.

Right now I'm looking to buy:

Mackie Onyx Satellite
Shure SM57
A PCI to Firewire port
Some extra RAM and a bigger hard drive

for recording guitar, bass, and vocals.

Now I need some headphones or a set of speakers.

Can someone recommend me a good pair of headphones or speakers for around $100 or less?

Also, can someone explain why one would be preferred over the other for home recording?
You can't get decent monitors for less than $100. $400 is the point at which they start to become acceptable, anything under that won't be flat enough.

Check out JTS headphones, they're pretty good value for the money.

If you can, look at sennheiser cans, they're great.
For $150/monitor, the KRK RP-5 model will be a good buy, http://www.musiciansfriend.com/product/KRK-RP5-Rokit-Powered-Reference-Studio-Monitor?sku=602312

I have the KRK RP-8s and they are simply amazing, they are especially great for home-studios. I have listened to the smaller versions and they still sound great, just lack a little bass because of the small 5" woofer. If you have a sub lying around you might be able to incorporate that into your setup... value village might sell one for $10!
Quote by les_paul_01
In Soviet Russia, song copyrights you!
monitors are by far better compared to headphones for mixing.
I suggest looking for a pair of studio monitors that are normally around $500 new but find them used on ebay.
The KRK RP6 or RP8 are great to start on.