Uma limitação de um programa que mantenho é que os usuários finais geralmente não sabem quais alterações foram feitas. Para remediar isso, gostaria de mostrar aos meus usuários uma lista simplificada de alterações feitas em seus programas. Existe uma boa metodologia / abordagem a seguir que criaria uma lista fácil de atualizar que poderia ser inserida na interface do usuário?
Por exemplo: Devo armazenar tudo em um arquivo XML que é lido em um formulário? O histórico de alterações deve entrar em um banco de dados?
Nota: O programa é Winforms (C # 4.0).
ATUALIZAR
Com base no excelente feedback, decidi usar o SQLite como meu armazenamento de informações e fornecerei aos usuários uma lista cronológica de alterações em um controle TreeView.