Ok so we will have blcockchain pruning some day. Pruning essentially means that empty addresses don't fill up disk space.
With every transaction the bitcoin client(s) try to pick the least possible inputs to normally produce 2 outputs.
With many addresses in the wallet, it will on average take 2 inputs for 2 outputs. The count of addresses should converge to some number per wallet.
The wast majority of users will have only one wallet if at all. Actually for global adoption I would be surprised to see more than 500 million wallets as most people would use hosted wallets that each in itself would converge to the same number of addresses.
With pruning the block chain would essentially be [size of an address balance] * [magic number of addresses per wallet] * [500 million] which should be less than 1kB * 100 * 500E6=500E11B=50TB
This I would consider the end game. Miners could even prioritize merging transactions that lower that burden, so people would use clients that rather take many inputs than few, so the block chain could shrink.
Once we give up the illusion things could be anonymous, the block chain could shrink to 1kB * 1 * 100 assuming we all use one of 100 hosted wallets