.Net SQL Server Database Monitoring - Inserir, atualizar, excluir

Alguém sabe como monitorar alterações de registro de tabela em um banco de dados SQL Server (2005 ou 2008) a partir de um aplicativo .Net? Ele precisa oferecer suporte a vários clientes ao mesmo tempo. Cada cliente "assina" quando é iniciado e "cancela" quando sai. Vários usuários podem estar acessando o sistema de uma vez e quero refletir suas alterações no cliente de outros usuários. Então, quando o cliente manipular o evento de alteração, ele poderá atualizar seu objeto local que representa esse registro. É semelhante à maneira como o Access atualiza os registros modificados são refletidos em cada formulário que faz referência a ele.

Eu sei que a Microsoft tem suas bibliotecas Microsoft.SqlServer para interagir com um SQL Server. Mas não tenho certeza de qual conceito se aplica ao que eu quero fazer (ou o que poderia ser dobrado para aplicar ao que eu quero fazer). Os que parecem úteis podem ser os de gerenciamento ou de replicação.

Antecipando alguém perguntando: "Por que você não solicita a tabela ocasionalmente para procurar novas informações?" Eu tenho um grande número de tabelas que eu quero monitorar e isso seria um problema. Além disso, se estou procurando algo um pouco mais elegante.

Estou aberto a sugestões ...

questionAnswers(5)

yourAnswerToTheQuestion