Hi,
You can create a custom product field in order to select the "tags" in each product.
Then, you can create a filter on that field to be able to filter the products listing based on these tags.
When you use that filter, you'll see the URL of the page change in the address bar of the browser. So you could use that URL to create a menu item as an alias of that URL.
This when, when the customer would click on that menu item, he would directly end up on the filtered products listing.
Now, you mentioned variants. Variants cannot be listed on a products listing.