A idéia geral é que um processo peça (e tenha) a menor quantidade de privilégio de que ele precisa para realizar seu trabalho. Exemplos disso são servidores da Web que se ligam à porta 80 (que pode precisar de root), mas depois mudam para um usuário do sistema não privilegiado posteriormente.
Você deve ter notado que "pode precisar de root" e não "must have root". Tradicionalmente, os processos teriam que iniciar como root para se ligarem a uma porta menor que 1024 e, em seguida, mudariam posteriormente. Agora, com recursos, se configurado corretamente, você não precisa fazer isso. CAP_NET_BIND_SERVICE permite ligar a uma porta inferior a 1024 não como raiz.
Esta é outra iteração de "fazer o mesmo com menos". Por que executar como root com ALL o acesso que dá quando você precisa apenas de um aspecto que é o binding ports. Os recursos fornecem essa granularidade.
A diferença entre iniciar o daemon como root ou como um usuário diferente e sudo como root é menor e geralmente dará os mesmos resultados.
Para edição, trabalho administrativo, etc. a maioria das pessoas prefere ser um usuário "padrão" e sudo para essas tarefas. Tornar impossível o login como root fecha uma possível porta insegura.
O software geralmente é instalado como root. Por quê? Porque se o seu servidor web pode modificar seus binários ou arquivos de configuração (por que sim o apache, eu acho que seu diretório publicamente acessível deve ser / etc) é uma má idéia.