We are using WinSCP .NET to work with SFTP servers. Currently we are facing issues when a big number of operations are executed simultaneously at the same moment. At some point our .NET application cannot allocate new threads from the thread pool for new requests because a certain number of threads are already blocked by waiting WinSCP operations to be completed. Sometimes one operation can take more than 1 minute, so we are facing significant downtime.
Is there any way to use WinSCP asynchronously, so threads wouldn't be blocked? If not at the moment, are there any plans to implement asynchronous operations in the future?
No, WinSCP .NET assembly has synchronous API only.
Currently there are no plans to change that. I'm taking your question into consideration, though.