There are a few differences you need to keep in mind from what i first read:
1. Liquidity, in demo you are able to open 10000 contracts in less than a second at one single price point, in real live that is not the case, not with any futures contract out there.
2.Execution, no slippage in demo, there is slippage when trading live, especially when trading very large size. Slippage happens while entering a trade (unless you use limit orders) and slippage happens while exiting an order (unless you use a stop limit order but then you might never get filled at all).
4. Another classic one, is the strategy doing so called martingale? Always seems lovely in demo, never sustainable in the long run with real money.
In demo you can just keep adding to your position, or even doubling it every time it goes a few ticks against you. The difference here is that every time you do so your losses get bigger and bigger, something you can handle in demo but will not have the stomach nor the cash for while trading real money.
3. Maybe the most important/significant one, psychology. When trading live you will act and react completely different with real money on the line. A lot of traders lose and never stop losing purely because of psychology. Sometimes its arrogance, thinking they are the best ever and just had some bad luck, things will be different next time (NOT). Sometimes it is fear, fear of losing real money. After a few losing experiences traders start to take profits before it reaches the profit target, out of fear for losing the little profit they have now, but let losers run to the stop loss resulting in a negative risk:reward. Often even moving the stop loss even further in the hope things will turn around.
You are right about trading demo first until you are sure, however there is only one way to be 100% sure, to find out all of the above for you personally and that is trading with actual money on the line, in demo you will never experience these examples that can make all the difference.