Shells in 2019: Fish.
I have use bash a lot, zsh more and fish some. There have been multiple stints where I have been trying to get into fish. But this time I think it will stick.
The reason is that with version 3 they added support for some syntax that is very common in most shells || and &&. The latter is very useful when you want to run commandA and commandB, but only run B if A is successful. Fish is a very modern take on the shell. It is not that new, but much newer than anything else.
My impresson is that both the user experience and the shell as a config and scripting langauage is modern, and most of the weird stuff from ZSH and BASH is gone.
This means that it is not compatible with POSIX where it would make it harder to use.
I like it a lot, like I always have. And I do think it will stick this time.