When a user requests a transaction to be completed in the crypto world, somebody has to verify and complete that transaction. That somebody is called Miners . They charge Gas Fees to complete the transactions in the blockchain.
They need to charge that fee for the following reason:
Miners have to use their own computing power to process this transaction request. That computing power can be divided into the hardware resource, electricity bill as well as Maintainance of this hardware and surroundings. This adds up to a good fraction of gas fees.
To enable the fact that these transactions are legit, more miners have to verify the transaction. So for example, if you take the computing power and multiply it by a couple of miners that adds to another significant chunk of gas fees. Additionally requiring a fee to validate a transaction, the particular blockchain prevents fraudsters to scam the system.
Transactions generally wait to be picked by miners and included in the following block. The inherent system allows urgent transactions to be computed quicker. For that, you need to pay an additional fee which also determines the final gas fees. It is something like we pay in case of bank transfer if we want 1 day vs 5 day wait time for the money to transfer.