How to SendStop() and Dispose() a server remotely

Need to be able to stop, edit, and restart a server remotely to be able to adjust queue settings.

For example, say Server1 is listening on Queue { test, default, critical }, I need to be able to send a shutdown, edit the queue list to add/subtract { test, default }, then start the server again - all remotely.

A problem that I’ve encountered here is that if you send a job to a server to tell that server to shutdown, the job never marks as “succeeded” and stays eternally as “processing” because the completion code could never be sent.

This is beyond Hangfire. You must have a socket or something else in outside of Hangfire logic. And control your own flow by using what communication u want (pulling from db, tcp socket, web socket)

Ok, alternatively, what about changing a server’s listening Queues (BackgroundJobServerOptions) while the server is still running, without restarting it - would this be possible?

No, that isn’t possible to change queues while running.
As ArgeKumandan said, it’s beyond hangfire.
What we are doing currently, it requires all of our Background Processing servers be run in Windows Services. On startup, the service first queries a db for the queues it should process. So we just update the table, and restart the services.