Teams is great when enabling "Guest" users to interact with your teams, via Meetings and Chat - they do not need a license. However, the best experience can be gained by "Federated Access" (now known as "External Access"). If you want instant chat and collaboration just like you do with members of your own organization, and the remote organization (customer/supplier/partner) also has an Office 365 subscription, you can add their domain to your Teams. Note the following screenshot:


As you can see, it's easy to go to Office 365 AdminTeams > "Org-wide settings" > "External Access" and simply "Add" a domain

It's advisable, but not required, that your customer also add your domain to their Teams settings. Now you can experience chat, file collaboration, video/voice, and more - as if the remote organization were within your own organization.


Link to official Microsoft article: https://docs.microsoft.com/en-us/microsoftteams/let-your-teams-users-communicate-with-other-people