C#プロジェクトを作成してビルドするときに、.exeはプロジェクト設定で出力パスを変更できるが、objがプロジェクトパスの直下に作成されてしまう。プロジェクト設定に変更する場所がないが、.csprojを編集し、IntermediateOutputPathを設定することでobjパスを変更できる。

.csproj
<PropertyGroup> <IntermediateOutputPath>..\..\obj\$(MSBuildProjectName)\$(Configuration)</IntermediateOutputPath> </PropertyGroup>

$(MSBuildProjectName)とかはマクロ。この場合、....\obj\プロジェクト名\Debug とかに中間ファイルが出力された。

マクロの参考
MSBuild Reserved and Well-Known Properties
Common MSBuild Project Properties

参考
How to configure Intermediate Output Directory in C#?
IntermediateOutputPath