Lots of good points from Jim.
My only disagreement, and its not really a disagreement, is the lease. I lease for business (well, I got away from it the past few years since I bought my car out, but I'll lease again) It all depends on how you drive cars. If you're happy driving a car for a long time (and you can certainly drive these cars for a long time) then you should never lease. However, if you KNOW that you're going to be bored and into a new car every 2-3 years and you don't drive more than 15k miles a year...leasing might make sense for you even if you can't deduct the lease for a business, but only if you KNOW you're going to do that anyway.
I venture to say, from a pure financial point of view, its probably almost always cheaper to keep and maintain an older paid for car than it is to purchase a new or newer car.