I’m not sure I understand. Let’s try again.
Mopidy has an MPD frontend which understands the MPD protocol. mpd is another program that also understands the MPD protocol. mpc is an MPD client which can talk to either Mopidy or mpd.
I thought your 2nd situation described uninstalling Mopidy and using mpd instead. I guess I misunderstood somehow.
Your single Mopidy server can handle all types of music, you do not need separate servers. You should see and be able to load both m3u and spotify playlists.
No, local playlists do not “buffer in the background”. An m3u playlist containing live streams may take a bit of time to load if the particular streams require numerous http requests to resolve them. EDIT: To expand on this more, we need to lookup each stream and extract the track info/metadata so we can add it to the tracklist. This lookup requires us to open the stream (as if for playback) and this is slow, and sometimes really slow depending on the type of stream, server speed etc. It’s even slower if any of the streams are down/broken since the connections will timeout after x seconds. Maybe we could improve this a little but it’s not trivial since the stream metadata may be outdated very quickly so you cannot simply cache it for any useful length of time.
An m3u playlist containing just local tracks should load quickly but it may depend a bit on what local backend you are using (sqlite is best).
It would probably help if you could provide an example m3u playlist that takes a long time to load. And provide the exact commands you used to load it. Better yet, also include a debug log showing the slow load occurring.