If your app requires a million users to work, you’re probably going to fail. Unless you can raise a massive amount of money and can afford to wait for a long time before you reach critical mass.
The better plan is to change the system by changing little systems. When Facebook launched, it started at one school. It didn’t need everyone in America, it just needed a critical mass at one institution.
Then, it needed a critical mass at other ivy league schools. Once it spread to all universities it had enough momentum to keep pushing out into the world.
In general, your idea has to work with a tiny critical mass. That way you can start tomorrow and get a small win before you run out of money or time.
Think about the micro markets. Capture them and then expand until the system as a whole has been changed.