So I need to backup everything, but in case of a failure I just need to recover the chainstate folder with the backup?
This depends on what you define as 'need to backup'.
The only thing you really need to backup is the wallet.dat. This file contains all of your private keys (which are needed to access your BTC).
Anything further is helpful, but not necessary to be backed up.
If you don't want to resync the whole blockchain (which might take some time depending on the specs), you'll need to backup the chainstate folder.
In case of a corruption of your DB, you will be able to remove the block files and redownload the blocks again. And instead of needing to completely process the whole blockchain to build the chainstate, you will be able to use your backup instead.
Instead of downloading the corrupted blocks, you might also store the whole blockchain as a backup. But this does need quite a lot of space and doesn't bring that much time advantage with it.
Downloading a few files isn't the problem. Building the chainstate if it got corrupted takes the most work (CPU, I/O, ..) and therefore time.