I rarely buy new, 2 to 3 year old car prices drop quicker than they will in the next few years, there are very few cars if any that won't last a long time anymore, and there's always some warranty left.
that said, I do know a few tips...
there is no such thing as MSRP. Memorize this or stop reading now. Insist they not mention that insult when you walk in the door. It is a made up starting point from which to offer fake discounts. I've said "why not start at a million and discount 980,000?" Just as absurd.
if possible, before entering the showroom, find out the invoice/price paid by the dealer for the car and work up from that...you may not have to work up at all, especially if you can find out what monies the dealer will get from the factory holdback, unit bonuses, or elsewhere after selling to you. I've seen it happen where one pays less than invoice because the sale triggered enough bonuses to the dealer that they made plenty of money.
Might learn average invoice for your desired model on manufacturer's website, but can probably get the sales manager to show you the invoice on the specific car you want.
There can be as much as three parts to making a deal, price of the car desired, trade in value, financing...KEEP THEM SEPARATE. Do not allow overlap, you will lose any edge from one to another in the confusion game that they play better than you.
When asked if you have a trade in or what you want to pay a month, respond by saying "what does that have to do with the price of the car I want?" Do not give in, Better to walk out. There are nothing but cars available in the world, never ever show that you loooove the one today. And stating a monthly payment sets the price without a struggle, they just extend the term of the loans, and stuff.