See our CloneDR tool for finding exact and near-miss blocks of duplicate code across large bodies of source code.
CloneDR works by parsing the source text using a compiler-quality front end, building compiler data structures ("AST"s) that represent the code, and matching the trees. This means it can find duplicates in spite of layouts, line breaks or comments. The matching process can find code blocks that are similar in the sense that can be parameterized; it easily find similar blocks with renamed variables, or with statements or blocks of code that have been replaced.
There are versions for many languages, including C#. A sample C# clone detection report can be found at the website.
CloneDR is not a "development preview". I wrote one the original papers on how to do this well back in 1998 and have been developing CloneDR ever since; see Clone Detection Using Abstract Syntax Trees. (The Microsoft Clone detector does token-based, not tree-based clone detection, and produces, IMHO, answers that are not as good; in fact, such token-style detectors are why I wrote the paper).