--------------------------
Third parties like moonpay or any other service usually charge you fee when trading bitcoin with fiat. It varies from one service to another service.
I haven't ever used moonpay and I don't know how much fee they charge you.
The other fee is the fee you pay for making a transaction. That's called transaction fee or network fee.
Note that bluewallet or other non-custodial wallets don't charge you any fee for the transactions you make and all the fee is paid to miners.
The transaction fee depends on following factors.
1. How fast you want you transaction to be confirmed
2. The network state
3. Number of inputs and outputs.
4. Addresses type.
What would have the lowest amount of processing/network fees?
The minimum fee rate you can use for a transaction is 1 sat/vbyte. Therefore, the minimum fee you can pay depends on number of inputs and outputs and addresses type.
Note that with paying the minimum transaction fee, there's a probability that your transaction takes a very long time to be confirmed.
Assuming that you have received all the fund in a single transaction and you want to spend all the fund to a single address, your transaction has 1 input and 1 output.
If your address is legacy (addresses that start with 1), the transaction size would be around 230 vbyte and the minimum fee would be around 230 satoshi.
If your address is nested segwit (addresses that start with 3)*, the transaction size would be around 160 vbyte and the minimum fee would be around 160 satoshi.
If your address is native segwit addresses that start with bc1), the transaction size would be around 140 vbyte and the minimum fee would be around 140 satoshi.
Note that if your transaction includes more inputs or more outputs, it will be larger in size and you have to pay a higher transaction fee.
* Not all address that start with 3 are nested segwit.