There will be 21 million bitcoins. But consider that every bitcoin is equal to 100 million Satoshi. There are also many other cryptocurrencies that can be used for payments.
If the supply is limited, we will see bitcoin on a higher price. This is great because if you hold much bitcoin then you make good money. Other cryptocurrency offers great services and I think we will never run out of supply in the future, this is just a cycle.