I doubt that we can achieve a total cryptocurrency dominance over fiat currencies in the world by the next twenty years, this is because fiat currencies are the symbols and identities of countries and the whole nations of the world will want their legal tender to be their main transaction currency. This can mainly be possible if the whole countries of the world or atleast the superpowers decides to adopt one world currency and decides that it'll be a digital currency, then it can be Bitcoin. Probably in the next 100 years or above, maybe people will become tired of centralized currency, and they might advocate for crypto currency to take over from fiat.
I don't share you pessimism for digital currencies generally, but only for centralized blockchain-based cryptocurrencies.
The reason Bitcoin hasn't taken over traditional currencies is not because of some worldwide government plot, not because people don't know about it, and not because there hasn't been billions of dollars poured on the problem.
Cryptos haven't taken off as a mainstream form of payment because they
simply can't do it on a technical level. Bitcoin transactions can cost 30 US dollars and take 30 minutes. Other less-centralized approaches have cut that time and cost down, but it's still nowhere near where it needs to be to handle daily worldwide transaction volume, e.g. millions of transactions per second and tens of billions per day.
That's the
bad news. The
good news is that if you drop the "blockchain religion" and just create a centralized digital currency paradigm that is easier for end-users and will scale up to mainstream volume, you could truly envision it taking over and non-digital money being a thing of the past--and this will happen in just a few years, not decades.