Cross appdomain/process tests do generally tend to suffer from the fact that NCrunch artificially wires together its test domains from files that can exist in separate locations.
There is some
documentation in the wiki that briefly describes how you can set up your own appdomain by using references to assemblies already loaded into the NCrunch test appdomain. You can rely on NCrunch to have loaded all required references into your appdomain before any tests are run.
In terms of running tests with medium trust, this isn't really an area that's been well tested with NCrunch (to my knowledge), though in theory sandboxing your own application domain would allow you to do this. An unfortunate side-effect is that you won't have any code coverage from NCrunch for code that is executing inside your own application domain or process, as it doesn't have control over how this domain is managed.
I admit that I haven't come across any situations before where people had a need to do something like this, so I'm guessing it's to test some kind of application specific functionality that needs to make use of .NET security features. Is the scope for this kind of test very large for you?