Why having two types of tx instead of one ?
Look at monero blockchain size. The private tx are way bigger than the public one
By keeping the two types of tx, you can avoid to surcharge the blockchain with private ones when they are not needed.
You can also imagine a lot of applications using that possibility of having both private and public tx.
Monero blockchain size might become a huge problem if it become really successful
I'm not sure about this. The cryptonote protocol allows both mixed and unmixed transactions, and unmixed transactions are
smaller than Bitcoin-style transactions. That is by design and is discussed in section 2.5 of the cryptonote white paper.
Furthermore, many, perhaps most, of the transactions on the Monero blockchain are unmixed (though we do expect this to change in the future).
I think the reason the Monero blockchain is larger is just more usage (from being a higher profile coin that has been traded more actively on exchanges for a longer period of time).
Take a look for yourself. You can scroll pages and pages at
http://explorer.shadow.cash and see hardly any non-empty blocks. Looking at
http://chainradar.com/xmr/blocks, there are only about 30% empty blocks on Monero. Both coins have the same one-minute block time so this is a valid comparison.
Another contributing factor to the Monero chain size was a temporary bug in the pool implementation (which at the time was brand new -- we sponsored its development) that created a lot of extra transactions on the Monero chain for the first few months. It is annoying that made the chain bigger, but it isn't ongoing growth, so it doesn't present a concern for the future.
Chain size is a concern for every coin. Just look at the current debate over raising Bitcoin's block size. Allowing the chain to grow too much is a huge issue.