This project will generate a C# 4.0 parser using ANTLR v3.2. Then you can add your own logic to do what you want.
It generates CSharp target and has a reasonably small amount of code for the preprocessor in the lexar.CSharp Language SpecificationCSharp 4.0 Language SpecificationWhat is ANTLR?
ANTLR, ANother Tool for Language Recognition, is a language tool that provides a framework for constructing recognizers, interpreters, compilers, and translators from grammatical descriptions containing actions in a variety of target languages. ANTLR provides excellent support for tree construction, tree walking, translation, error recovery, and error reporting.