The socket connection was aborted - CommunicationException

I thought this was a circular reference problem........turns out it's not.

The problem arose from having not configured the service configurations at all.

Since the defaults are very low, sending lots of data will make the service collapse.

Scenario:

It seems I may have circular references in my WCF service, but using "[DataContract(IsReference=true)]", does nothing to help fix it.

I receive the error "The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '00:01:00'."

that exception is not related to Circular Reference, it's just purely timing out as you try to pump tons of data over the wire.

The default values that comes with WCF are very very low (these have been changed in WCF 4 I believe). Have a read on these two blog posts, they should give you an idea on how to dethrottle your service:

Update: also, there are a number of different timeouts in the WCF configuration and depending whether it's the client or server you're talking about you need to update a different timeout clause... have a read of this thread on what each one means and you should be able to figure out which one you need to bump up. Or, you could just set every timeout to int.max if you don't really care if a call can take a loong time to complete.