This is a highly speculative question. From a technical point of view there will eventually be 21 million (21e6) bitcoins in circulation, yes. But we are already witnessing a shift to using the millibitcoin (mBTC) when denominating prices.
This use of ever smaller fractions may go on until we reach the satoshi (1e-8 bitcoins). We would effectively have 21e14 satoshis in circulation. Even this limit could be shifted if there is consensus among the users of Bitcoin that such a change is indeed needed, but let's assume that it is indeed a hard limit. So we would have 21e14 units of accounting for a world population of 7e9. That would mean that on average each human would own 3e5, or 300'000 satoshis. The purchasing power of those satoshis depends on the evolution of the market price, but there certainly is no technical limit to the widespread adoption of Bitcoin.