O TimeOut do lado do Client, é feito pelo Sistema Operacional... Em algumas situações, o Sistema Operacional pode ter dificuldades em saber que trata-se de uma situação de TimeOut... isso ocorreria por exemplo, quando o servidor Http esta OnLine mas há algum problema no WebService
Devido a essa característica, tem uma opção no ACBr que é TimeOutPorThread (algo assim)...
Com ela ativada o ACBr faz a conexão em uma Thread e abandona a mesma, no tempo exato definido em TimeOut... e deixa a Thread morrer sozinha...
Eu não gosto de usar essa opção pois você não terá o verdadeiro erro HTTP, mas pode ser uma opção em Clientes onde o TimeOut é problemático