O position fixed é utilizado para quando você quer que um elemento sempre mantenha a mesma posição na tela, independente do comportamento do usuário.
O position sticky é muito útil quando você precisa que um elemento siga a navegação do usuário até certo ponto. Ou seja, ele vai seguir o comportamento do usuário até que você estabeleça uma regra, como chegar até uma sessão específica da página, por exemplo.
Resumindo, o sticky te da uma flexibilidade maior para trabalhar, enquanto o fixed é mais "engessado".