TinyCC is a .NET binding for the Tiny C Compiler, which implements the C99 Standard.
You can use TinyCC to compile and link C programs on the fly, and use the compiled code from your .NET program. Tools for implementing an interactive read-eval-print loop are provided as well.