Maybe, the links would help you.
You should look into the concerns of overloading an inbound port the a service is using.
You can take the code and make it work for a Windows desktop solution.
Please check if the content in the following posts will help you:
Setting a per-request proxy (or rotating proxies) with .NET Flurl/HttpClient
Dynamically change proxy in HttpClient without hard cpu usage
Hey, I'm researching for the solution as well, I have similar use case as you do. Did you find a solution?