I have 3 lists under one client, and really the only difference is where we got their information - different trade shows, so I thought it would be a good idea to consolidate them into a single list and separate them by segment based on a "source" field, but I'm not sure what the best way to do that would be. It doesn't look like there's a built-in option for "Importing a Segment from another list" or anything.
So here's my plan, but I don't know if it's a good idea: If I were to export each list to a CSV and import each into my main list, would I have to worry about anything like... double entries not being accepted, or losing the unsubscribe information, etc? What would be the best way to do this?
Your plan to import them into an existing list will work fine - Campaign Monitor will not import anyone who is on the suppression list, so if they have unsubscribed from your other lists they will stay unsubscribed.
In the list you want to keep, create your 'source' custom field, and then when you import each file make sure you have pre-filled the source column appropriately.
See http://www.campaignmonitor.com/blog/archives/2007/02/creating_and_using_segments.html for help with creating the segments.