Onde está o local correto para armazenar os dados específicos da minha aplicação?

Eu estou desenvolvendo um pequeno jogo C # Winforms e uma das coisas que eu estou querendo fazer é salvar dados específicos do aplicativo. No entanto, estou lutando um pouco para entender o local correto que deve ser armazenado.

Tanto quanto eu posso ver, existem vários tipos de dados que um aplicativo pode armazenar e, consequentemente, diferentes locais para serem armazenados:

1. Propriedades do aplicativo - Configurações como onde o aplicativo armazena seus dados, quem foi o último usuário logado, o tamanho da janela padrão, posição, etc. Essas informações devem passar para app.settings ou talvez no registro?

2. Dados globais da aplicação - Isso pode incluir sprites e outros ativos de jogo usados ​​por todos os usuários que executam o aplicativo nesta máquina. Onde esses dados comuns seriam armazenados? Vale a pena notar que no meu caso particular, esses dados não serão fornecidos com uma instalação padrão e os usuários poderão adicionar seus próprios recursos de jogos, que devem estar disponíveis para qualquer outro usuário no mesmo computador.

3. Dados de aplicativos específicos do usuário - Isso inclui os arquivos de jogos salvos pelos usuários, suas preferências específicas de aplicativos e suas informações de perfil. Onde devo guardar isso?

Idealmente, eu desejo que meu aplicativo seja compatível com o Windows XP, Vista, 7 e, claro, o próximo Windows 8 - eu não sei se isso muda os métodos, mas espero que ajude com o fornecimento de conselhos.

Esta é a minha primeira incursão neste tipo de desenvolvimento e gostaria de receber alguns conselhos de "melhores práticas".

questionAnswers(3)

yourAnswerToTheQuestion