A public IP address is reachable from the Internet. You can use it for communication between your instances and the Internet.
A private IP address is not reachable over the Internet. You can use it for communication between instances in the same VPC.
Want to Learn AWS, check out this AWS Course by Intellipaat.