Hi David! Welcome. What you are describing sounds awesome!
My suggestion would be that you spin up a discourse instance and play with it, so you can see in practice what it can do. Also, there are several topics here that already answer just about all of your questions. The search is your friend.
To get you started, note that the discourse equivalent of a mailing list is a category. Categories can be configured to limit access, to allow new topics to be created via email, etc. There is also an admin setting to specify default notification levels for new users, so they can be watching specific categories from the get go. If the people in each of your mailing lists are very different and do not overlap much, you may be looking at setting up multiple discourse instances.
One thing you won’t find in the UI is the ability to import users. You can invite them via the UI but if you want to just import them without asking them first, you will want to look at the import scripts.
If you also want to import past conversations, the mbox importer will be your best friend… it imports posts for every email in an mbox file and creates accounts for each email address that appears in the mbox file. Since mailman archives are mbox files, you will be in great shape here.
Have fun!