DotNetMock

DotNetMock is a framework and a library to facilitate the use of MockObjects for unit testing on the .NET platform. It supports the creation of your own MockObjects as well as the dynamic creation of MockObjects. It supports almost any version of NUnit, and MbUnit.
DotNetMock DynamicMocks can mock interfaces at runtime and can even modify ref/out parameters.