Is it really best practice to call client.Abort() when catching FaultException. I have experienced timeouts on subsequent service calls when a total of 10 clients were aborted with the error:
"The request channel timed out while waiting for a reply after 00:01:00. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout."
It seems like the client.Abort() call clogs up the channels.