I'm using the latest version of Bitcoin QT
Just encrypted it and backed it up.
If i generate 20.000 addresses, and transfer BTC to this addresses.
Would the backup i made recover all my BTC?
If you're using an HD wallet, then yes. This would be the case if you created the wallet from scratch with the latest version of Bitcoin Core using default settings. However, if a lot of those addresses were unused, you might have to use special options to increase the gap limit when attempting to recover from the backup, or it might not regenerate enough addresses.
If you're using a non-HD wallet, then no; in that case you have a keypool of 1000 keys. So when you make a backup, it will be able to recover coins from the next 1000 addresses you generate, but no more than that (unless you use the appropriate command line option to enlarge the keypool). This would be the case if you created the wallet with an old version and then upgraded, or if you set the command line option to use a non-HD wallet.