What's the difference between public and private community

I see from documentation that I can set community to public or private while creating the community - but what’s the difference between the 2 ?

@martin

Public community is discoverable and users can join freely
**Private" community is non-discoverable by non-members, and users can only be passively added into the community