Acontece que a diferença é uma variável de ambiente $HOME ausente. Quando $HOME não está definido no ambiente, nenhum arquivo de inicialização é originado por csh ou tcsh. A falta de uma variável $HOME é interpretada por csh exatamente como se ela tivesse recebido a opção de linha de comando -f .
Isso faz sentido ao considerar os arquivos de inicialização do shell ~/.cshrc e ~/.login no diretório inicial do usuário. Se $HOME não estiver definido, esses arquivos específicos do usuário não poderão ser carregados. Mas o csh simplesmente pula procurando por todos os arquivos de inicialização, tanto do sistema quanto do usuário, quando $HOME não está definido.
Definir $HOME para qualquer diretório válido antes de executar o script csh, seja o diretório home real do usuário ou até mesmo um diretório temporário vazio, torna a origem csh /etc/csh.cshrc como esperado.
Eu não encontrei nenhuma documentação para explicar ou descrever este recurso, mas o código-fonte tanto para o bsd-csh quanto para o tcsh confirma esse comportamento.