Saquei, neste caso vamos problematizar o metodo estatico para enxergar o cenario.
Pq tudo depende da forma que vc constroi o sistema, se eu crio um metodo estatico para gerarXML (vamos ver este seu caso ai), entao, toda vez q eu precisar gerar um xml eu faço:
*Como sugerido por vc
string xml = GeradorDeXML.GerarXML(objeto);
Até ai tudo bem, funcionaria legal sem nada de mais, lembrando que vc na sua aplicação tem vaarios lugares chamando este geradorDeXML, todo mundo funcionando bonitinho. Ai suponhamos que agora vc tenha que gerar alem do XML , arquivos em JSON e arquivos de texto. Vc criaria outras classes GeradorDeJSON e GeradorDeTexto (seguindo a mesma logica), no entanto, agora eu preciso que os meus geradores (texto,json,xml,etc...) sejam capazes de incluir em um sistema de controle de tarefas onde iria criar uma interface Gerador que as demais classes (geradordetexto,json,xml,etc..) teriam que implementa-la? Ai começaria o problema com os estáticos, basta ter uma "mudança" pode derrubar sua implementação.
Bem, isso não é motivo pra evitar os metodos estaticos, é so tomar cuidado mesmo para com a sua utilização