Acho que o "Generic - Reutilizável Diff Algorithm em C #" no Codeproject é o melhor que você pode encontrar como um .NET-Engine para diff / patch / merge. Fiz um projeto por conta própria com ele e ele atende às minhas necessidades na maioria dos cenários. Existem um ou dois cenários de pior caso, quando o algoritmo tornou o arquivo de patch maior do que deveria ser. Mas na maioria dos casos funciona bem para mim (arquivos de texto com tamanho> 30 MB).
No momento, estou testando outro projeto Codeproject que você pode encontrar aqui: http://www.codeproject.com/KB/applications/patch.aspx
Ele está usando algumas DLLs da Microsoft para correção, por isso parece interessante. Mas essas DLLs não são gerenciadas e este projeto é apenas uma espécie de invólucro para ele. Mas talvez isso possa te ajudar
Edit:
Acabei de encontrar outro projeto, DiffPlex : http://diffplex.codeplex.com/
É uma combinação de uma Biblioteca de Diffing .NET com um visualizador de Silverlight e HTML diff . Conforme declarado lá , DiffPlex é a biblioteca que o CodePlex utiliza para gerar as diferenças de arquivos.