Harmony is an open source library written by Andreas Pardeike for the purpose of modding C# based games.
It uses advanced reflection tricks to let you create harmony patches that can inject code into existing functions and fields, and even partially or fully overwrite code.
Since this uses reflection, everything is done in memory, leaving the original assembly files on disk untouched.
This is obviously extremely useful for writing mods, and as such Harmony is included with UMF, and provides some built in wrappers taking advantage of it's functionality.
UMF is currently using an unreleased Version 2.0 compiled straight from the master branch.
It is provided in .NET 3.5, .NET 4.6.2, and .NET 4.7.2 to be compatible with the full range of Unity Games available.