Oh wow I found it. So the first step that brought me there was the log:
It said it couldn't load nunit from a directory like C:\[...]\.NETFramework\4.7.2\Assemblies or something. So first I downgraded my test project to net462 to match the tested project. This was not the fix, but the log also had this line about System.Net.Http:
Code:
Process 43180: 18:02:39.7879 [6] - <test-suite type="Assembly" id="1000" name="Finanzlotse3.Unit.Tests.DLL" fullname="C:/Users/mregenhardt/AppData/Local/NCrunch/21684/25/api/Finanzlotse3.Unit.Tests/bin/Debug/Finanzlotse3.Unit.Tests.DLL" runstate="NotRunnable" testcasecount="0"><properties><property name="_SKIPREASON" value="Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
 ----> Could not load file or assembly 'System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
 ----> Could not load file or assembly 'file:///C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Net.Http.dll' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
 ----> Could not load file or assembly 'file:///C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Net.Http.dll' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
 ----> Could not load file or assembly 'file:///C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Net.Http.dll' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
 ----> Could not load file or assembly 'file:///C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Net.Http.dll' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
 ----> Cannot load a reference assembly for execution.
 ----> Cannot load a reference assembly for execution.
 ----> Cannot load a reference assembly for execution.
 ----> Cannot load a reference assembly for execution." /></properties></test-suite>
So I tried some more, and eventually got the error message that the System.Net.Http dll couldn't be loaded due to conflicting versions. So I checked manually.
The main project has the following reference:
<Reference Include="System.Net.Http, Version=4.2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll</HintPath>
<Private>True</Private>
</Reference>
while the test project had this one:
<Reference Include="System.Net.Http, Version=4.1.1.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll</HintPath>
<Private>True</Private>
</Reference>
And that killed the build. For some reason, although NuGet says both use version 4.3.4 (even after reinstall), they had different assembly versions written in the .csproj file.
I manually changed the test project to 4.2.0.0 and now it works. I also update the AssemblyRedirect in the test project's app.config.
No idea how this is possible, just a big mistake on NuGet I guess. I probably wouldn't have found this one without your help, thank you so much, this has been bugging me for months!