mais desempenho para ter tabelas normalizadas ou desnormalizadas

Atualmente estou desenvolvendo um aplicativo mvc para ler a partir de um banco de dados do SQL Server existente. O banco de dados está desnormalizado - e eu estava olhando para modificar algumas tabelas para normalizá-lo em um grau.

Isso levou a uma discussão com um colega desenvolvedor como a maneira mais eficiente de ler os dados, ou se a estrutura deveria mudar ou não. Os dados serão lidos via ado.net com um procedimento armazenado. A pergunta que tenho é, é mais eficiente ter vários campos em uma tabela (desnormalizada) OU ter várias tabelas com junções internas (normalizadas) para recuperar os dados?

Eu deveria ter mencionado, as ações nas tabelas serão 95% lidas, 5% escritas.

questionAnswers(5)

yourAnswerToTheQuestion