Olá Leonardo, tudo bem?
A seguir estão as principais diferenças entre essas duas funções da DOM e alguns links de acesso para estudo complementar.
document.querySelector()
document.getElementById()
A escolha de qual irá utilizar vai de acordo com as preferências da pessoa desenvolvedora!
Recomendo que caso precise selecionar apenas um elemento pelo identificador, utilize o document.getElementById
pois o mesmo é específico para essa finalidade e caso precise usar uma seleção mais precisa/avançada, use document.querySelector
pelo fato de ter a liberdade de utilizar seletores CSS, o que é uma grande vantagem.
Ainda assim, não há problemas em preferir usar o querySelector
para selecionar um elemento pelo id, pois isso dificilmente irá afetar a performance do programa.
Espero ter ajudado, em caso de dúvidas fique a vontade para perguntar. Bons estudos!