The root is the folder where the website files for a domain name are stored. Because cPanel allows for multiple domain names (addon domains and subdomains), you need to have a unique folder for each domain that you wish to display a separate site.
Some cases like wordpress child themes dont need this, but pointing multiple domains to the same directory would show the same site across those multiple domains.

Your primary domain is rooted in the public_html folder. Your addon and subdomain names can be rooted in their own folders inside the root folder, or in their own folder in public_html.
Multiple Domains, One Site
If your site supports it, you can point multiple domains to the same root directory as mentioned above. This is useful if you have multiple variations of the domain. For example, domain.com, domain.com.au, ausdomain.com etc