# Script compilation with MSBuild (Experimental)

> Compile scripts with MSBuild as an experimental alternative to the default Unity script compilation pipeline.

> **Important:**
>
> Script compilation with MSBuild is an experimental feature in this version of Unity. It's provided as a technical preview for functional testing and validation and is not suitable for production use.

Compile scripts with MSBuild as an experimental alternative to the default Unity script compilation pipeline. MSBuild has native support for NuGet package management, but it's important to understand some key limitations that apply to NuGet usage in the context of Unity projects.

| **Topic**                                                                                                             | **Description**                                                                                           |
| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| **[MSBuild compilation in Unity](/engine/7000.0/manual/programming-environment/script-compilation/msbuild/unity.md)** | Enable script compilation with MSBuild and understand the Unity-specific limitations to MSBuild features. |
| **[NuGet package policy](/engine/7000.0/manual/programming-environment/script-compilation/msbuild/nuget-policy.md)**  | Understand the restrictions that apply to the use of NuGet packages in Unity projects.                    |

## Additional resources

* [Organizing scripts into assemblies](/engine/7000.0/manual/programming-environment/script-compilation/assembly-definition-files.md)
* [Building and publishing](/engine/7000.0/manual/building-and-publishing.md)
