In your binding configuration, there are four timeout values you can tweak:
The most important is the sendTimeout, which says how long the client will wait for a response from your WCF service. You can specify hours:minutes:seconds in your settings - in my sample, I set the timeout to 25 minutes.
The openTimeout as the name implies is the amount of time you're willing to wait when you open the connection to your WCF service. Similarly, the closeTimeout is the amount of time when you close the connection (dispose the client proxy) that you'll wait before an exception is thrown.
The receiveTimeout is a bit like a mirror for the sendTimeout - while the send timeout is the amount of time you'll wait for a response from the server, the receiveTimeout is the amount of time you'll give you client to receive and process the response from the server.
In case you're send back and forth "normal" messages, both can be pretty short - especially the receiveTimeout, since receiving a SOAP message, decrypting, checking and deserializing it should take almost no time. The story is different with streaming - in that case, you might need more time on the client to actually complete the "download" of the stream you get back from the server.
There's also openTimeout, receiveTimeout, and closeTimeout. The MSDN docs on binding gives you more information on what these are for.
To get a serious grip on all the intricasies of WCF, I would strongly recommend you purchase the "Learning WCF" book by Michele Leroux Bustamante:
and you also spend some time watching her 15-part "WCF Top to Bottom" screencast series - highly recommended!
I've tried to add the binding sections to <system.serviceModel> in web.config, but its throwing an error now.... any additional steps I've missed out on...
I also changed the endpoint in my service to the <endpoint address="" binding="IncreasedTimeout" - is this the wrong thing to do?
exactly - the binding is the type of protocol you use - basicHttp, wsHttp, netTcp. The binding configuration is this configuration you create in config to modify timeouts etc.
Funny even after doing this, still getting a timeout error, Marc can you please give as much information as possible?