The public_html folder is the web root for your primary domain name.
This means that public_html is the folder where you put all website files which you want to appear when someone types your main domain (the one you provided when you signed up for hosting).
You can also create Addon domains and Subdomains, and these will use a folder inside public_html.
e.g. You can create an Addon domain called mophost.com and it will use a subfolder similar to /public_html/mophost/
The public_html folder should always have 0750 permissions.
All folders inside the public_html folder should have 0755 permissions.
All files inside the public_html folder should have 0755 or 0644 permissions.