IMO, a better term to use than “gambling” is “speculating”. Of course, some people who are speculating are actually gambling, but not all speculating is gambling.
Our product is not currency nor commodities nor equities - it is price. We trade the price development of whatever the underlying product might be. This is legitimate trading and the fact that it is a position based on price does not automatically make it a gamble.
Financial markets are complex nowadays and there are many ways and reasons for using CFD’s instead of the actual underlying product. The use of these does not automatically mean one is gambling.
For example, the futures and options markets have been around for decades already. These are instruments that lock in a price for a future date. They are not the actual product, they are the price of that product. Some futures/options are convertible into the underlying product on expiry but most such contracts are closed before expiry and sometimes rolled over into the next contract date.
Futures and options are used by major industries such as electricity and oil producers to lock in future prices. This is not gambling. Banks use futures and options to hedge against interest rate moves. Investment funds use these instruments to trim their exposure etc.
So one should say that it is NOT the instrument that defines whether one is gambling - it is how the person USES these instruments that defines that.
Speculating is a process that is based on the view that prices will be either higher or lower in the future than where they are now. One might call that gambling, but it is the process and not the product that defines that. It is irrelevant whether the position is formed with the actual product or with an instrument because the prices are tightly linked together.
As has been said, this argument about gambling recurs over and over again. The simple answer is if one is comfortable with trading, then trade. If not, then don’t.