Loosing the private key it’s bad, but if someone steals the private key, it’s a disaster.
Thieves can not only decrypt personal data, they can also impersonate the owner by signing messages with his private key.
Yes, it is possible to revoke the stolen key, but that would mean probably loose years of signatures and basically creating a massive inconvenience to redistribute a new public key to the world. SubKeys can help to prevent this disaster.
Having separate SubKeys makes key management easier and protects you in certain occasions, for example it is possible to create a new SubKey when a previous one gets stolen, without losing previous signatures.