Hard to tell exactly what's going on in your client/service interaction based on the info in your question but here are some things to try:
First, change everything that you set to 519730000 back to the default values except maxReceivedMessageSize which should be set to something in the range of 2 - 3 MB (start at 2097152 & increase until that message size exception goes away).
If that doesn't work, keep the same settings I've suggested but change the config to basicHttpBinding
instead of netTcpBinding
in both the service and client for this test. If this binding change works then it's very likely you're not properly disposing of the WCF client instances (ClientBase
or channels from ChannelFactory
). netTcpBinding
depends on sessions and if the client instances aren't disposed of correctly, your code isn't releasing TCP resources efficiently on both the service & client. BTW: wrapping the client instance in using
is not the right way either because of the funkiness of the WCF Dispose implementation.
If the calls still have timeouts, then you've pretty much eliminated bad TCP & client configuration and you should focus on the code performance of the service implementation.