How to show configurable options in product listing?
If product options are not displayed on category pages, customers have to select them from the product page to add the items to the cart.
To display configurable swatches on category pages, navigate to Stores → Attributes → Product → choose the attribute → Storefront Properties tab and enable the Used in Product Listing setting.
Save the changes and flush the cache. As a result, customers will be able to select the needed product variant right in the product listing.
Kindly note that this default feature may depend on the peculiarities of your theme. If you can't make the swatches show on category pages with the setting above enabled, check your theme configurations.