This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

In Visual Studio, projects are the containers that developers use to organize source code files and other resources that appear in Solution Explorer. Typically, projects are files (for example, a .csproj file for a C# project) that store references to source code files and resources like bitmap files. Projects let you organize, build, debug, and deploy source code, references to Web services and databases, and other resources. VSPackages can extend the Visual Studio project system in three main ways: project types, project subtypes, and custom tools.

In This Section

Project Types
Project types add support for new kinds of projects, such as programming languages. For example, each language that Visual Studio supports has its own project type, and the IronPython integration sample includes a project type for the IronPython language. You must create a project type for languages other than C# or Visual Basic to customize how items are built, debugged, deployed, and displayed in Solution Explorer. For more information, see Project Types.

Project Subtypes
Project subtypes are based on project types and can be used to customize the way projects are built, debugged, and deployed. Visual Studio uses project subtypes with Smart Device projects; they customize deployment by copying a newly-built program from a development computer to the target device. The C# and Visual Basic project types can be used as the basis for project subtypes; C++ project types cannot. Your own project types can also be used as the basis for project subtypes. For more information, see Project Subtypes.

Web Projects
Explains Web project, which in turn create Web applications.

New Project Generation: Under the Hood, Part One and New Project Generation: Under the Hood, Part Two
Explains what actually occurs when you create a new project.

VSSDK Samples
Describes the samples in the VSSDK that deal with projects and solutions.

Inside the Visual Studio SDK
Explain different aspects of Visual Studio extensibility.