Yes. Mailchimp does it easy.
Mautic does it perfect:
There are no lists. Just dynamic segments. It means, you set a filter, and you list will be created (and updated all the time according to the filter settings)
Segments can be set based on any custom field you set OR based on collected data (visits, events, actions…)
You can add your own custom fields to contacts (probably you haven’t found it). Settings - Custom fields. You have complete control of your custom field strategy: decide if you want to use checkbox, multiselect, lookup, etc…
Not sure what do you use categories for, but you can solve everything with custom fields, tags and segments in Mautic.