Honestly your best bet is getting a CPO (certified pre-owned). Walk in to the dealership after you have found your choice of car (probably a lower end like 323i or 128i) and sit down with the agent and go over numbers. Make sure you know what payments you'll be able make and feel comfortable with and go from there. You could go private sale route and pick one up that way but you you'll have to make sure everything is correct on the car and take it in for an inspection. Also, don't forget about maintenance costs. Some of the new BMW's are 1yr/24,000km oil changes (I think that is almost 99.9% correct). After that, it will be a costly charge (about $200 at the dealer).
One note as well. I know the x35 BMW's are far more appealing because of torque and horsepower numbers. Remember that lower end cars other then the x35 can also perform just as well and save you on gas and maintenance. I was on the 135i only mindset but it looks like I might be jumping into the 128i as the test drive was more then wonderful.
Happy Holidays and good luck on the hunt!