A VPC is a virtual private cloud (VPC) that spans an AWS region. There are two or more availability zones in a region. Subnets within a VPC are used to logically isolate resources within a region. A subnet can't be shared by more than one availability region. Depending on its accessibility from outside of VPC and whether it can access resources outside of VPC, a subnet can be classified as either a private or public subnet.
In VPC, a subnet is an important part. A VPC may contain all public subnets (or a mix of public and private subnets). A subnet that does not have a route to the internet gateway is known as a private subnet. By routing traffic via a virtual private gateway, a subnet can be configured as a VPN-only subnet.