If you are looking to Buy bitcoin with fiat, then the methods available will differ based on a few factors:
  • Where are you located (country)?
  • How much are you looking to buy?
  • What payment methods do you have available?
  • How soon do you need access to the proceeds?
  • Is financial privacy important?
With a P2P exchange, you can create a Buy offer and set your own price (e.g., 4% below spot). You are competing with other Buyers, so if you want to find a Seller you'll have to offer a competitive price. But most trades there that happen from a Seller Taking a BUY offer result in the Buyer (i.e., you) paying below spot. That's sometimes referred to as "negative fees'.
If you are needing your coins sooner, you can always Take a Seller's trade offer, but in that instance you are the one paying the premium, and the Seller benefits from "negative fees".
tl;dr: For the best price, be an offer maker, not an offer taker.