I want to buy Bitcoin with my cash and then buy stuff with the Bitcoin.
You need to figure out which fiat payment method you want to use. Most centralized exchanges will only accept things like bank transfers or credit cards, and not things like PayPal, MoneyGram, and definitely not cash. If you want to use a centralized exchange, then you will not be able to buy today - you will first have to sign up to the exchange you want, then complete their KYC procedures and wait for verification, then deposit USD using the slowness of the fiat banking system. Once your fiat is deposited, however, you can buy and then withdraw bitcoin almost immediately.
If you want to trade with PayPal or MoneyGram, then you will need to use a decentralized exchange such as Bisq or LocalCryptos. The trade also won't be instant, but you would potentially be able to buy and withdraw your bitcoin within the space of a few hours.