Sorry, I spoke too soon. What is said above still holds but the connect timeout was discussed on the Synapse list in 2012 and the non-blockingmode (which is mentioned above) was implemented in revision #160.You also need to set the HTTPSender.Sock.ConnectionTimeout which handles the Connect timeout in non-blockingmode after which the socket is switched back to blocking mode.Example:Code: Pascal [Select][+][-]const URL = '10.255.255.1'; // <-- this is always non responsevar HTTPSender: THTTPSend; HTTPGetResult: boolean; Tm: TDateTime;begin HTTPSender := THTTPSend.Create; try HTTPSender.Timeout := 1 * 1000; HTTPSender.Sock.ConnectionTimeout := 1 * 1000; Tm := Now; HTTPGetResult := HTTPSender.HTTPMethod('GET', URL); Tm := Now - Tm; ShowMessage(Format('%d: done in %.3f seconds', [HTTPSender.ResultCode, Tm * 24 * 60 * 60])); finally HTTPSender.Free; end;end;