I have a program which shuffles messages from a source to a queue.
Then it has another background thread running an endless loop which waits for a message to be added to the queue, then pulls that message from the queue and moves it to somewhere else.
Should that background thread be started using Task.Run() or Thread.Start()?
I don't really know how busy that background thread will be. It might be waiting most of the time for a new message to come; or messages might be coming so fast it doesn't have much time to wait.
This background thread will be running for quite a long time, as long as the user has that window open.
(Perhaps there's a third option I haven't thought of?)