Features of Visual Studio
This article describes features for experienced developers, or developers who are already familiar with Visual Studio. For a basic introduction to Visual Studio, see the Visual Studio IDE overview.
In Visual Studio's modular installer, you choose and install the workloads you want. Workloads are groups of features that programming languages or platforms need to work. This modular strategy helps keep the Visual Studio installation footprint smaller, so it installs and updates faster.
If you haven't already installed Visual Studio, go to the Visual Studio downloads page to install it for free.
To learn more about setting up Visual Studio on your system, see Install Visual Studio.
Create cloud-enabled Azure apps
Visual Studio has a suite of tools to easily create Microsoft Azure cloud-enabled applications. You can configure, build, debug, package, and deploy Azure apps and services directly from the Visual Studio integrated development environment (IDE). To get the Azure tools and project templates, select the Azure development workload when you install Visual Studio.
In Visual Studio, use Cloud Explorer to view and manage your Azure-based cloud resources. Cloud resources might include virtual machines (VMs), tables, and SQL databases. Cloud Explorer shows the Azure resources in all the accounts under the Azure subscription you're signed into. If an operation requires the Azure portal, Cloud Explorer has links to the place in the portal you need to go.
The Cloud Explorer window is retired in Visual Studio 2022. For more information, see Manage the resources associated with your Azure accounts in Visual Studio Cloud Explorer.
Use the Azure portal to access Azure resources as necessary. You can continue to use the Azure node of Server Explorer in previous versions of Visual Studio.
You can use Azure services for your apps by adding Connected Services, such as:
- Active Directory connected service, to use Microsoft Entra ID (Microsoft Entra ID) accounts to connect to web apps
- Azure Storage connected service for blob storage, queues, and tables
- Key Vault connected service to manage secrets for web apps
The available Connected Services depend on your project type. Add a service by right-clicking the project in Solution Explorer and choosing Add > Connected Service.
On the Connected Services screen, select the link or the plus sign to Add a service dependency. On the Add dependency screen, select the service you want to add, and follow the screens to connect to your Azure subscription and service.
For more information, see Move to the cloud With Visual Studio and Azure.
Create web apps
ASP.NET Core and .NET Core run on Windows, Mac, and Linux operating systems. ASP.NET Core is a major update to MVC, WebAPI, and SignalR. ASP.NET Core is designed from the ground up to provide a lean and composable .NET stack for building modern cloud-based web apps and services.
For more information, see Modern web tooling.
Build cross-platform apps and games
Visual Studio can build apps and games for macOS, Linux, and Windows, and for Android, iOS, and other mobile devices. With Visual Studio, you can build:
.NET Core apps that run on Windows, macOS, and Linux.
Mobile apps for iOS, Android, and Windows in C# and F# by using Xamarin.
2D and 3D games in C# by using Visual Studio Tools for Unity.
Native C++ apps for iOS, Android, and Windows devices. Share common code in iOS, Android, and Windows libraries by using C++ for cross-platform development.
Connect to databases
Server Explorer helps you browse and manage server instances and assets locally, remotely, and on Azure, Microsoft 365, Salesforce.com, and websites. To open Server Explorer, choose View > Server Explorer. For more information on using Server Explorer, see Add new connections.
SQL Server Object Explorer provides a view of your database objects, similar to SQL Server Management Studio. With SQL Server Object Explorer, you can do light-duty database administration and design work. Examples include editing table data, comparing schemas, and executing queries by using contextual menus.
To open SQL Server Object Explorer, select its icon at the top of the Server Explorer window, or select View > SQL Server Object Explorer from the Visual Studio top menu.
SQL Server Data Tools (SSDT) is a powerful development environment for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. With SSDT, you can build, debug, maintain, and refactor databases. You can work with a database project, or directly with a connected database instance on- or off-premises. To get SSDT, use the Visual Studio Installer to install the Data storage and processing workload.
Debug, test, and improve your code
When you write code, you should run it and test it for bugs and performance. With Visual Studio's debugging system, you can debug code running in your local project, on a remote device, or on a device emulator. Step through code one statement at a time, and inspect variables as you go. Or set breakpoints that are only hit when a specified condition is true. You can manage debug options in the code editor itself, so you don't have to leave your code.
For more information about debugging in Visual Studio, see First look at the debugger.
To improve app performance, check out the Visual Studio profiling feature.
Visual Studio offers testing options like unit testing, Live Unit Testing, IntelliTest, and load and performance testing. Visual Studio also has advanced code analysis capabilities to find design, security, and other flaws.
Deploy your finished application
Visual Studio has tools to deploy your app to users or customers through the Microsoft Store, a SharePoint site, or InstallShield or Windows Installer technologies. You can access all these options through the Visual Studio IDE. For more information, see Deploy applications, services, and components.
Manage your source code and collaborate with others
In Visual Studio, you can manage your source code in Git repos hosted by any provider, including GitHub. You can also browse for an Azure DevOps Server to connect to, too.
For full details, see the Git experience in Visual Studio page. And, for a step-by-step tutorial on how to connect to a Git or Azure DevOps repository by using Visual Studio, see the Open a project from a repo page.
We continue to build out the Git feature set and iterate on it based on your feedback. For more info about a recent feature update along with a link to survey where you can share your feedback on it, see the Multi-repo support in Visual Studio blog post.
How you open a project from a GitHub repo by using Visual Studio 2019 depends on which version you have. Specifically, if you've installed version version 16.8 or later, there's a new, more fully integrated Git experience in Visual Studio available to you.
And, for a step-by-step tutorial on how to connect to a Git or Azure DevOps repository by using Visual Studio, see the Open a project from a repo page.
Optimize the Visual Studio experience on Microsoft Dev Box
This feature is currently in public preview. This information relates to a feature that may be substantially modified before it's released. Microsoft makes no warranties, expressed or implied, with respect to the information provided here.
With Visual Studio 17.7 Preview 3, you can pregenerate Visual Studio caches and include them in your dev box image. As a result, Visual Studio will load your solution and enable key IDE features faster on your dev box. You can also improve the Git performance on large repositories by enabling Git commit-graph optimizations in dev box images.
Extend Visual Studio
If Visual Studio doesn't have the exact functionality you need, you can add it. Personalize the IDE based on your workflow and style, add support for external tools that aren't integrated with Visual Studio, and modify existing functionality to increase your productivity. For the latest version of the Visual Studio Extensibility Tools (VS SDK), see Visual Studio SDK.
You can use the .NET Compiler Platform Roslyn to write your own code analyzers and code generators. Find everything you need at Roslyn.
Find existing extensions for Visual Studio created by Microsoft developers and the Visual Studio development community.
To learn more about extending Visual Studio, see Extend Visual Studio IDE.