I still feel better paying off a car in 3 years rather than 5, so I usually suggest making a few extra payments to make that happen.
You will get a better deal with more incentives with dealer purchased cars if you finance. They may give you more for a trade and negotiate more on the final price. Perhaps even give you a few extra options for free.