Instance is like a server, it hosts your account and some communities.
Communities are like “subreddits”. It has to created / operated on one of the instances, but is accessible to all federated instances (which is largely the norm).
An analogy is email. You can choose your email provider (Gmail, Protonmail, Fastmail etc) and you will have an unique email address based on that provider (e.g. [email protected] is different from [email protected]), but you will have the ability to send emails to anyone (unless you are blocked).