I created a project with winforms and used the mvp pattern.
The data with validations is transefered with a wcf.service.

This is the model that is used to make the response.
Code:
public IList<KlantModel> GetKlanten(string sortExpression)
{
    var request = PrepareRequest(new KlantRequest());
 
    request.LoadOptions = new string[] { "Klanten" };
    request.Criteria = new KlantCriteria { SortExpression = sortExpression };
    var response = Client.GetKlanten(request);
 
    //if (response.CorrelationId != request.RequestId)
    //    throw new ApplicationException("GetCustomers: RequestId and CorrelationId do not match.");

    //if (response.Acknowledge != AcknowledgeType.Success)
    //    throw new ApplicationException(response.Message);

    return Mapper.FromDataTransferObjects(response.Klanten);
}
The request works gets all the data with the wcf.service.
But when the service wants to return the response. It doesn't give an error but goes in time out after 10 min. (See code below)
Code:
        public KlantResponse GetKlanten(KlantRequest request)
        {            
            var response = new KlantResponse(request.RequestId);
 
                IEnumerable<Klant> klanten;
                klanten = _klantDao.GetKlanten(sort);
 
                response.Klanten = klanten.Select(c => 
                //Transfer BO to DTO
                DataTransferObjectMapper.Mapper.ToDataTransferObject(c)).ToList();
            //This is the part where it doesn't do anything anymore
            return response;
        }
The web.config is configured also .
Code:
<system.serviceModel>
    <services>
      <service behaviorConfiguration="behaviorAction" name="NameSpace.Service">
        <endpoint binding="wsHttpBinding" bindingConfiguration="bindingAction" contract="NameSpace.IService">
          <identity>
            <dns value="localhost"/>
          </identity>
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="behaviorAction">
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <wsHttpBinding>
        <binding name="bindingAction" transactionFlow="false" sendTimeout="00:30:00" receiveTimeout="00:30:00">
          <reliableSession enabled="true"/>
        </binding>
      </wsHttpBinding>
    </bindings>
  </system.serviceModel>
Does anyone knows how it comes that just the return doesn't work without any error?

Thanks in advance.