Slack and Discord are skins over the same thing. A bunch of conversations happening at the same time. Threads are made after the fact, and many conversations are braided together, so you have to untangle them.
Zulip has a tiny change: you have to make a conversation have a point up front by giving it a thread title. Random convos can happen in the 'random' thread, so it includes the previous model.
This is so much nicer. Conversations are untangled and it becomes way easier to go through messages quickly. Conversations also end, instead of just petering out before oozing into another one. Threads introduce cutoff points.
Zulip mobile app is meh though.
Discord does have allow you to make named threads that branch off of a channel, and later archive them. It's not the default mode of conversation on Discord but it is available if you care to use it. Also, I am confused what you mean by "threads are made after the fact" on Discord.