Oii Christopher, tudo bem?
O operador "new" é utilizado para criar uma nova instância de uma classe. No caso do código que você está estudando, quando você faz "List colaboradores = new();", você está criando uma nova lista de objetos do tipo "Colaborador". Cada objeto dessa lista terá suas próprias propriedades e métodos, que são independentes dos outros objetos da lista.
Por outro lado, um método estático, como o "ExibeFolha()" na classe "DepartamentoPessoal", não está associado a nenhuma instância específica da classe. Ele pertence à classe como um todo, e não a um objeto individual. Isso significa que você pode chamar esse método sem precisar criar uma instância da classe. É por isso que você pode fazer "DepartamentoPessoal.ExibeFolha(colaboradores);" sem antes fazer "DepartamentoPessoal depto = new();".
Então, você deve usar "new" quando quiser criar uma nova instância de uma classe, e um método deve ser estático quando ele não precisa estar associado a uma instância específica da classe.
Um abraço e bons estudos.