Nothing wrong with buying new as long as you don't pay list prices! You need to grow a back bone and haggle.
We've just bought a brand new car, only 7 miles on the clock, from a dealership with £4k off list price of £18k - they registered it at the end of March to hit registration targets for hefty manufacturer bonuses. End March/early April is a brilliant time to do it, even more so if you're not too fussy about colour/spec. We had a "choice" of 7 cars at the same price with the same low mileage (delivery mileage only), but only two choices of colour and only two choices of spec. The one we chose wouldn't have been our first choice, but when you get £4k off list, we can put up with that!! We put the Reg number in we buy any car and could make a small profit if we took it to them today!!
The previous brand new car we bought was in 2015, same time of year, March, got a car with a £20k list price for only £15k with a full tank of fuel, floor mats, tow bar fitted, safety pack fitted (all round sensors), and a full spare tyre (which presumably they took off another car!). Again, just haggled hard, right time of year, the dealership were clearly desperate to hit their registration targets. That time, it wasn't even pre-registered, we got it straight from the compound and down as first owner. Initially we walked away when they didn't come down enough on price, but they phoned us a few days later to agree to what we were offering!!
You only lose a lot of money when driving off the forecourt if you pay list price and don't haggle! If you have the freedom of time to buy, colour, not too fussy on variant, etc., you can often get a good deal. Obviously, there have been times when we've got knocked back by dealerships - you can't win all the time, but when that happens, just move on to a different dealership, or try again at a different time of year. Sometimes, if you walk away, they phone you with a better offer.