Reflexil is an assembly editor and runs as a plug-in for Lutz Roeder's Reflector, a great tool for .NET developers. Reflexil is using Mono.Cecil, written by Jb Evain, which is a strategic library for the Mono project.
Reflexil is able to manipulate IL code and save the modified assemblies to disk. Reflexil also supports 'on the fly' c# code injection.
The sketch I had created for Patcher: