If you have problem from service side, for example if you are using callbacks and you are trying to invoke the callback after a period of time and you are getting an exception saying channeldoesnot exist or channel faulted etc then you should increase the "receiveTimeout" section at server side to some valid period and this will solve the bug.
Remember you cannot make this value infinite but you can set the max value which is
uint.MaxValue