I absolutely love Fish, but it's worth warning anyone who's taking a first look and excited to try it, that some syntax differences from more familiar shells like Bash may cause frustration, both in terms of muscle memory and anytime you need to copypasta. It hasn't been enough of a problem for me to switch back (or to ZSH), the benefits far outweigh the frustration, but I do think it's worth a small warning.
This one's tricky. I've driven fish daily for years, and it's definitely snappier than my old omzsh setup (I much prefer this style of history), but you can get bitten by certain tools not using shebangs properly.
Just having sensible defaults on a shell works wonders on my day-to-day productivity.
Add a couple of aliases for productivity and off you go.