Esta é uma pergunta cinzenta. Algumas delas são definíveis, mas muitas são opiniões.
Em suma, eu acho que o zsh é um bom shell para uso pessoal (como um shell interativo), mas não para scripts de sistema.
Eu não acho que o zsh irá substituir o bash. Não porque é inferior, mas porque cada shell visa objetivos diferentes. O Bash é mais voltado para padrões e compatibilidade, enquanto o zsh é voltado mais para o poder.
Quanto a se você escreve scripts em um ou outro, eu não escreveria scripts no zsh, a menos que esses scripts sejam para seu uso pessoal. O Zsh não está instalado em muitos sistemas por padrão. Bash é.
Vantagens de uma sobre a outra é uma resposta extremamente opinativa. Além dos pontos mencionados (compatibilidade vs poder), existem algumas coisas legais sobre o zsh. O Zsh suporta a compilação de scripts no bytecode. Quanto de ganho de desempenho é esse, eu não sei. Mas pode ser bastante significativo, pois o shell script é uma linguagem muito solta e eu imagino que analisá-lo é muito difícil. Embora para que houvesse alguma diferença notável, o roteiro provavelmente teria que ser várias centenas de kb. Mas isso é tudo apenas um palpite.
Voltando ao aspecto do poder, o zsh também oferece um LOT mais recursos internos de manipulação e variáveis de manipulação. Sério, a capacidade de manipulação variável do zsh é insana.
Se vale a pena mudar, isso depende de você. Eu pessoalmente mudei porque estava batendo contra os limites do que o bash poderia fazer. O Bash sempre será um shell relevante e oferece muito poder. Eu não mudaria até que você chegasse ao ponto de saber como aproveitar todos os recursos que o bash tem a oferecer e saber exatamente o que pode e não pode fazer.