I have withdrawn and trade ETH from MEXC multiple times already and I am never charged more than $3 but when I swap ETH ERC 20 on Uniswap the gas fee is almost always $10 and few times over $10, why is it like this? Are DEXs suppose to be more costly normal centralized exchanges?
Well using erc20 contracts is expensive, and this is nothing. Just few years ago swapping fees in uniswap went to $50+ . If current one is too expensive, you should use L2 versions in uniswap, like polygon, arbitrum, and optimism. That's why they were developed in the first place. Until ethereum scales, if you are not swimming in money you should look for alternatives to use for bad days.
And yes, DEXes definitely are more expensive then cexes. There's a literal price to pay if you want to use decentralized services.