The only problem with Haveno is that you need to pre-own a small amount of XMR as a safety deposit to avoid scams. So it is not the best if you need to get started from scratch. (You get your deposit back after the trade)
Haveno essentially generates a wallet for you that you use on trades, so when I say "add funds" I mean to that new wallet (which is locally generated and thus non-custodial, keys are always under your control)
Once you add some funds to Haveno, just click any of the offers listed there. You'll probably need to add a payment account to your haveno account but the app will guide you through all the steps. There are some tutorials floating around there.