Go to an audio shop and listen to the speakers and find the ones that you like. Then find them online for cheaper. MB Quart and Infinity are nice drop in speakers for BMWs so in many cases you won't have to cut or drill. Might be a good idea if this is your first install. Once you find the speakers you like, find a sub that you like. If you like quick tight bass, most rock music, go with a 10" For deeper, punchy bass, rap and hip-hop, then go with a 12" or 15" Then find an amp to power it all.
Because $$ is an issue I would go with top notch speakers in front and ditch the rears. A good sub, (i like JL), and a 4 channel amp. 2 channels to the front and bridge the 3rd and 4th to power the sub. You should be able to get something sounding really good for $1000 if you go with that setup.
<img src='http://memimage.cardomain.net/member_images/9/web/741000-741999/741934_9_full.jpg' border='0' alt='user posted image' />
JC Chip * Cosmos Racing CAI * UUC System U * UUC Underdrive Pulleys * Fan Delete * UUC Sachs Stage 4 Suspension * Sway Barbarians * Racing Dynamics Front strut bar * X-Brace * Front Camber Plates * UUC TME * BBS 18x8.5 * 235/40/18 Yokohama AVS Sport * F&R Zimmerman X-Drilled Rotors * SS Brake Lines * Rouge RSM w/enforcers * Clears all around * SilverStars * Pioneer Avic N-1 * Pioneer 6 Disc Changer * JL 450/4 and 1000/1 Amplifiers * 2 JL 12" W6V2 * Diamond Audio Hexs 6.5" in kick panel * MB Quart Premiums 4" in Rear * Infinity Kappa 3.5" in door * Batcap 400 * Optima Yellow Top