Você não precisa reiniciar imediatamente após renomear a máquina ... apenas não espere que todos os serviços e funções apareçam no novo nome.
Coisas como variáveis de ambiente do sistema são lidas uma vez, na inicialização do sistema. Se você alterar essas variáveis, os vários componentes do Windows não serão detectados até que sejam reiniciados. Alguns desses componentes estão tão profundamente integrados ao sistema operacional que é possível reiniciar todo o sistema operacional.
Muitos serviços e aplicativos do Windows, tanto os criados pela Microsoft quanto os de terceiros, que usam o nome do host do sistema, normalmente o leem apenas uma vez na inicialização e nunca mais o leem.
Sei que estava escrevendo um aplicativo que lia o nome do host da máquina, seria uma tolice da minha parte fazer pesquisas periodicamente para o caso de mudar.
Em um sistema operacional como o Linux, você vê a mesma coisa. Você pode alterar o nome do host sem reiniciar, mas é necessário reiniciar alguns componentes muito básicos do sistema para que eles sigam o novo nome. O Linux é mais modular que o Windows, embora o Windows tenha percorreu um longo caminho em termos de modularidade.
Uma maneira de detectar se um sistema Windows está pendente de uma operação de renomeação de computador é verificar o registro. Se o conteúdo de
HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName
e
HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName
não são os mesmos, isso significa que o sistema possui uma operação de renomeação pendente que será concluída na próxima vez em que o sistema for reiniciado.