Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
We're excited to share the latest improvements to Visual Studio 2026! This release brings a range of enhancements designed to make your development workflow faster, smoother, and more productive. Whether you're building cloud-native apps, working with AI-powered tools, or debugging complex projects, we've focused on delivering features that help you get more done with less friction.
Download Visual Studio 2026 Insiders to enjoy these new features and improvements.
Features
Released on January 13, 2026.
IDE
Perform certificate revocation checks
Visual Studio now alerts you if it detects digital certificate problems during network calls.
Visual Studio now checks digital certificates for network calls and lets you know if there's a problem.
If it finds an issue, you'll see a dialog with details about the certificate error. You can choose to cancel or continue the connection.
We recommend keeping this feature on, but you can turn it off in Tools → Options → Environment → Security → Certificates.
![]()
Compact spacing in Solution Explorer
The spacing between items in Solution Explorer can now be adjusted to suit your preferences for improved readability.
Visual Studio 2026 introduced extra spacing between items in Solution Explorer to enhance accessibility. It proves helpful when using the mouse since it reduces the chance of misclicks. However, we understand that some users prefer a more compact view to see more items at once.
To accommodate different preferences, Visual Studio now allows you to adjust the spacing between items in Solution Explorer. You can choose between the default spacing and a more compact option.
In the picture below, you can see the difference between the default spacing (on the left) and the compact spacing (on the right):
Go to Tools → Options → Environment → Visual Experience and enable the Use compact spacing in Solution Explorer option to switch to the compact view. After enabling this option, the changes will take effect immediately.
Proxy support
Visual Studio now allows you to set custom, app-scoped proxy settings directly from the IDE.
Visual Studio adds a dedicated Proxy Settings page so you can control how the IDE connects in enterprise networks.
Set a custom proxy
Out of the box, Visual Studio uses your Windows proxy configuration. The IDE does not override system settings unless you choose to set a custom proxy.
If you need a different proxy configuration for Visual Studio, go to Tools → Options → Proxy Settings and select Use custom proxy settings.
Enter the proxy server URL and port, then choose an authentication option:
- Use the logged-in Windows account for integrated auth.
- Use alternate credentials to provide a username and password.
Note: A restart may be required for some features to pick up new proxy settings.
This first release applies to GitHub Copilot experiences and sign-in flows for Entra ID and GitHub within Visual Studio.
M365 Agents Toolkit
2 new templates onboarded to M365 Agents Toolkit.
We added a new Teams Collaborator Agent template to help you build agents that enhance collaboration in Microsoft Teams. These agents use the Teams SDK and secure RSC patterns to assist with daily work across Teams chats, channels, and meetings. They can summarize conversations, automate workflows, extract tasks, answer questions, and boost productivity right where your team collaborates. The template includes ready-to-use scaffolding and best practices to help your team stay organized and productive.
We also added a Travel Agent template that demonstrates how to build an intelligent travel assistant. The agent answers travel-related questions, helps users understand company travel policies, and finds flights and hotels that comply with organizational guidelines. You can find these new samples in View Samples from the ATK menu.
The Travel Agent uses Azure OpenAI and the Microsoft 365 Retrieval API to access company travel documents and policies stored in SharePoint or OneDrive for Business, providing contextual and policy-compliant travel recommendations directly within Microsoft Teams.
![]()
Productivity
Fast scrolling 📣
You can now scroll faster by holding the Alt key while scrolling the mouse wheel.
Scrolling through large files is now faster and easier. Hold down the Alt key while scrolling the mouse wheel to move quickly when reviewing code or reading documentation.
You can adjust the fast scrolling speed in Tools → Options → Text Editor → Advanced → Touchpad and mouse wheel scrolling sensitivity.
This feature helps you jump to the section you need without lots of scrolling. Try it out!
Thank you Aymen Hamadi for suggesting this feature and to everyone who voted for it!
📣 See feature ticket to share your feedback and continue the conversation.
Hide symbols under files 📣
You can now disable the display of symbols under files in the Solution Explorer.
Solution Explorer used to show symbols - like classes, methods, and properties - under files to help you navigate your code. Some users found this cluttered the view, since every file had an expander icon like folders and projects. Now, you can turn this off for a cleaner look.
Here's how symbols appeared before:
To hide symbols under files, go to Tools → Options → Projects and Solutions → General and uncheck Show symbols under Solution Explorer files. Solution Explorer will then only show files, without extra symbols:
Thank you Escalante Adriano for suggesting this feature and to everyone who voted for it!
📣 See feature ticket to share your feedback and continue the conversation.
New markdown preview features 📣
View preview-only and zoom in/out the preview content in the Visual Studio Markdown editor.
Visual Studio Markdown editor gives you more control over the preview.
- You can switch between preview modes: Split Preview shows the editor and preview side by side, Open Preview shows only the preview, and Edit Markdown shows just the editor. The preview-only mode helps you focus on rendered content, especially for large images or complex Mermaid diagrams.
- When previewing a Mermaid diagram, use the zoom controls in the top left corner to zoom in or out. This makes it easier to view large diagrams and see details.
Try out these new controls and let us know what you think!
📣 See feature ticket to share your feedback and continue the conversation.
Insignificant line compression
Enable syntactic line compression to make better use of your screen's vertical real estate.
Syntactic line compression gives you more vertical space in the editor. Lines without letters or numbers compress by 25%, letting you see more code at once without hurting readability. Regular lines stay the same height. In the image below, the right side shows compression enabled - notice how you can see more lines in the same space compared to the left side.
Enable this feature in Tools → Options → Text Editor → Advanced by checking Compress blank lines and Compress lines that do not have any alphanumeric characters. This popular feature from Productivity Power Tools is now built into Visual Studio.
Middle-click scroll 📣
Press down on your scroll wheel and move the mouse to quickly scroll through your document.
You can now unlock the full potential of the middle mouse button for faster navigation. Press down on your scroll wheel and move the mouse to quickly scroll through your document. This makes it easier to explore large files without relying on traditional scroll bars or repeated wheel scrolling.
This feature is off by default in 18.3 Insiders 2 and needs to be enabled via Tools → Options → Text Editor → Advanced → Middle click to scroll. Give it a try and share your feedback with us!
Thank you to everyone who voted for this feature!
📣 See feature ticket to share your feedback and continue the conversation.
HTML rich copy/cut
Copy and cut code snippets with rich formatting.
Visual Studio now supports HTML clipboard format when cutting or copying code from the editor. You can paste colorized code into web versions of Office apps, Azure DevOps work items, or other HTML-based controls.
This feature maintains syntax highlighting and formatting when you paste code into HTML-based applications, making it easier to share and present code snippets. It's turned on by default. To customize it, go to Tools → Options → Text Editor → Advanced where you can check or uncheck Copy rich text on copy/cut and set the max length.
Slimmer left margin in editor 📣
Reduce the space of left margin by cutting down the space occupied by Quick Actions icon.
We have heard your feedback about the left margin in the code editor taking up too much space and you would prefer a more compact left margin. To address this, we have reduced the width of the left margin by optimizing the space used by Quick Actions (e.g. lightbulb or screwdriver icons).
Instead of in the margin space, you will now see the Quick Actions icon appear inline with the code when there are available code fixes or refactorings. This change helps to free up more horizontal space for your code while still providing easy access to Quick Actions.
Left: Slimmer left margin with inline Quick Actions icon, Right: Previous margin
If you prefer the previous margin, go to Tools → Options → Text Editor → General and uncheck Show Quick Actions icon inside the editor.
📣 See feature ticket to share your feedback and continue the conversation.
GitHub Copilot
NuGet MCP Server
Provides a way of updating packages with known vulnerabilities and can retrieve real-time information about packages for GitHub Copilot.
The NuGet MCP server is built-in but must be enabled once in order to use its functionality. For more information, see the documentation on NuGet MCP server.
Getting Started
To enable the NuGet MCP server, follow these steps within Visual Studio 2026:
- Open the GitHub Copilot Chat window and make sure you are signed in.
- Click the tools icon in the bottom toolbar to bring up the Tools menu.
- Find the MCP server named "nuget" and check the box to enable it.
Fixing package vulnerabilities
The NuGet MCP server can help you identify and fix package vulnerabilities in your project. To use the MCP server to fix vulnerabilities, enter the following prompt in the GitHub Copilot Chat window:
Fix my package vulnerabilities
The MCP server will analyze your project's dependencies and suggest updates to packages that have known vulnerabilities.
Updating all packages
The NuGet MCP server can also update your packages to the latest compatible versions. To use the MCP server to update all packages, enter the following prompt in the GitHub Copilot Chat window:
Update all my packages to the latest compatible versions
The MCP server will analyze your project's target framework(s) and suggest updates to the latest version of packages that are compatible with your project.
Update a package to a specific version
The NuGet MCP server can update a specific package to a version you specify. To do so, enter the following prompt in the GitHub Copilot Chat window:
Update the package [PackageName] to version [VersionNumber]
Support
If you experience an issue with the NuGet MCP server or have any other feedback, please open an issue on the NuGet GitHub repository. Please provide the requested information in the issue template so that we can better understand and address your issue or suggestion.
Preview markdown from Copilot Chat
Preview any markdown content generated by Copilot Chat directly in the Visual Studio Markdown editor.
You can now preview any markdown content generated by Copilot Chat directly in the Visual Studio Markdown editor. Previously, this feature was only available for Mermaid diagrams.
When Copilot Chat generates markdown content, click the Preview button at the top right corner of the chat window to see a rendered preview. From there, you can edit and save the markdown content as needed. This lets you quickly visualize and work on markdown files without manually copying and pasting.
Click to accept code completions
Accept code completions up to your cursor position with a single click.
Have you ever wanted to accept a code completion partially with a single click? With the new Click to Accept feature, you can click into a code completion suggestion to accept it up to the cursor position. When you hover over a code completion, the segment will be highlighted as you move your mouse cursor over them to indicate it will be accepted.
This feature gives you more control over how much of a completion you want to accept, making it easier to integrate suggestions into your code. If you prefer using the keyboard, you can still press Ctrl+Right Arrow to accept one word at a time, or Ctrl+Down Arrow to accept one line at a time.
Try out the Click to Accept feature and share your feedback with us.
Colorized code completions
Code completions are now colorized with syntax highlighting to enhance readability.
Code completions from GitHub Copilot or IntelliCode are now colorized with syntax highlighting to help you quickly parse suggested code. Previously, completions appeared in a single color, making it harder to distinguish between variables, functions, and other code elements.
Currently, we only support colorized completions in C#, but we plan to extend support to more languages. Let us know which language you'd like to see next!
To differentiate suggestions from actual code, colorized completions use lower opacity and italic styling. If you prefer the original look, you can disable this feature by going to Tools → Options → Text Editor → Code Completions and unchecking Use colorized text for code completions.
Let us know what you think about the colorization!
Copilot memories updates 📣
Make Copilot custom to you by teaching it your coding standards and best practices - creating consistency that lasts across sessions!
Copilot needs to learn your preferences and project best practices to work effectively. Copilot memories help it understand and apply your coding standards, making it project-aware and consistent across sessions.
How Copilot memories work
Memories use intelligent detection to understand your preferences as you chat. As you prompt normally, Copilot looks for instances where you correct its behavior, specify a standard, or ask it to remember something. When detected, you'll see a confirmation to save the preference. You can choose whether it applies to your personal preferences (%USERPROFILE%/copilot-instructions.md) or your repo preferences (/.github/copilot-instructions.md).
As you prompt, you're teaching Copilot how to respond better and documenting development best practices for yourself and your team.
Thank you Peter Matthews for suggesting this feature and to everyone who voted for it!
📣 See feature ticket to share your feedback and continue the conversation.
Git tooling
Review pull requests from Visual Studio 📣
Review and navigate pull requests without leaving Visual Studio.
Pull requests are just a click away in the View → Git Repository window. No need to switch context to the browser!
Browse active PRs
Access pull requests for the active repository created by your team, assigned to you, created by you, or even created by Copilot!
Refresh the list
Don't see a new PR in the list? Click the ellipsis (...) and select Refresh to update the list.
Embedded PR view
Review pull requests without having to check them out. It's easy to jump between your colleague's PR and your own work. Tip: Collapse the left panel for a wider view.
The embedded view includes:
- Overview: PR description and global issue comments.
- Changes: File-level additions and deletions, plus comments.
- Commits: List of individual commits in the PR.
- Related Items: Linked work items.
- Reviewers: Assigned reviewers.
Pull requests automatically refresh with the latest changes and comments.
When you need to make edits, check out the branch as usual.
Thank you Pär Sandgren for suggesting this feature and to everyone who voted for it!
📣 See feature ticket to share your feedback and continue the conversation.
Desktop
WinForms Expert agent
The coding agent now includes special instructions for WinForms development, crafted by experts on the team.
The WinForms Expert agent is a comprehensive guide that helps you tackle the nuanced challenges of WinForms development. It covers several critical areas:
Designer code vs. regular code: WinForms projects have two distinct code contexts - designer-generated serialization code and modern business logic. The agent knows which C# features you can use in each context.
Modern .NET patterns: The agent is fully updated for .NET 8-10, including:
- MVVM data binding patterns with the Community Toolkit.
- Async/await patterns with the right InvokeAsync overloads.
- Dark mode support and high-DPI awareness.
- Nullable reference types (NRTs) in the right places.
Layout best practices: Get guidance on using TableLayoutPanel and FlowLayoutPanel for responsive, DPI-aware layouts that work across different screen sizes and scaling factors.
CodeDOM serialization management: Learn critical rules for property serialization in the WinForms designer, so you can avoid common pitfalls with
[DefaultValue]attributes andShouldSerialize*()methods.Exception handling: Use proper patterns for async event handlers and application-level exception handling to prevent process crashes.
The agent's instructions are detailed, covering everything from control naming conventions to accessibility requirements. It's like having a senior WinForms architect review every line of your code.
.NET
Hot Reload improvements
Faster, more reliable Razor Hot Reload with auto-restart support for rude edits.
We've made several improvements to the Hot Reload experience in Visual Studio.
Improved Hot Reload performance & reliability for Razor files
Thanks to co-hosting the Razor compiler inside the Roslyn process, editing a .razor file during Hot Reload is much faster and more efficient (addressing prior feedback where Blazor Hot Reload could take tens of seconds). This change also increases overall reliability when using Hot Reload.
To enable co-hosting go to Tools → Options and search cohost, which should show the feature Use Roslyn Cohost server for Razor (requires restart). After enabling this, it's recommended to restart Visual Studio to ensure it's enabled.
Fewer blocked edits (reduced 'rude edits')
We've expanded what code changes are allowed during Hot Reload. Several edits that previously triggered a rude edit (changes that require a rebuild and restart) are now applied seamlessly. Some examples of edits that are no longer a rude edit include:
- Renaming a file
- Editing code that has lambdas with default parameter values
- Editing property accessors with the field keyword
Auto-restart on 'rude edits'
Hot Reload can now automatically restart the app's process when an unsupported change ('rude edit') is made, instead of ending the entire debug session. To enable this, edit your project file to contain this property declaration
<PropertyGroup> <HotReloadAutoRestart>true</HotReloadAutoRestart> </PropertyGroup>You can also set this in a Directory.Build.props file. This streamlined auto-restart kicks in for project types where a quick process restart is feasible (e.g. certain Aspire or web projects), so you can continue debugging with minimal interruption.
This is a process-based restart. If you are debugging 4 projects, only the changed project(s) (and any dependent project) will get rebuilt and restarted.
Razor editor improvements
Faster and smarter Razor editor in Visual Studio, cohosting boosts speed/reliability and much more.
Here's a list of notable improvements to the Razor editor:
Performance & Reliability (Cohosting)
The Razor compiler and tooling experience now runs cohosted inside Roslyn LSP server, greatly speeding up Razor file updates (e.g. Hot Reload changes apply much faster) and improving reliability during editing.
To enable co-hosting go to Tools → Options and search cohost, which should show the feature Use Roslyn Cohost server for Razor (requires restart). After enabling this, it's recommended to restart Visual Studio to ensure it's enabled.
Simplify Tag Code Action (Community Contribution)
Added a new code fix to convert an empty component tag into a self-closing tag when no content or required child elements are present (contributed by Peter Juhasz). For example
<Component Attribute="Value"> </Component>can be simplified to<Component Attribute="Value" />Extract Style Block to .razor.css
You can now use a code action to extract an inline
<style>section from a Razor component into a separate .razor.css file. This helps isolate component-specific styles Blazor's CSS Isolation by automatically creating or updating the matching .razor.css file for the component.@bind:event IntelliSense
Improved Razor IntelliSense to provide completion suggestions for
@bind:<event>values (contributed by Peter Juhasz). When using two-way data binding with custom events (for example,@bind="Value" @bind:event="oninput"in Blazor), the editor now autocompletes valid event names like oninput or onchange.Formatting Improvements
The new Razor formatting engine received numerous bug fixes and enhancements. Razor editor now better honors C# formatting style options (e.g. spacing, indenting rules from Visual Studio configuration) inside Razor files and resolves various formatting quirks that existed in previous versions (especially around mixed HTML/C# content).
Debugging Tooltip Enhancements
Improved the debugger hover tooltips in Razor files. Visual Studio now more reliably displays variable values and object previews when you hover over variables or components in a Razor file during a debugging session, making it easier to inspect data at runtime.
Go To Definition for Tag Helpers
Leveraging new capabilities from cohosting, you can now navigate to the definitions of ASP.NET Core MVC Tag Helpers and their attributes directly from Razor files. Hitting F12 (or Ctrl+Click) on a Tag Helper (e.g. an
<input asp-for=" ">or any MVC Tag Helper usage) will jump to its source definition. This long-requested feature makes it much easier to explore and understand Tag Helpers in your projects.General IntelliSense Fixes
Addressed several Razor editor IntelliSense issues. HTML snippets (like typing
div+Tabto expand a<div>block) now appear consistently in Razor files (previously they sometimes failed to show up). Autocomplete for hyphenated attributes and component parameters (e.g.data-*attributes or Blazor component parameters with dashes) is more robust, so suggestions and completions work as expected in these cases.Razor Compiler Optimizations
Introduced significant compiler performance and memory usage improvements for Razor and Blazor projects. Solutions with many Razor components should see faster builds and less memory overhead. These optimizations make editing and building Razor pages snappier, addressing prior feedback about high memory usage and slow incremental builds in large Blazor apps.
Smarter .NET test generation
Create and refine unit tests faster with GitHub Copilot's intelligent test generation.
Visual Studio now includes smarter test generation with GitHub Copilot. You can quickly create and refine tests to boost coverage and confidence in your code. This feature works with C# and popular frameworks like xUnit, NUnit, and MSTest.
Whether you're starting a new project or improving an existing one, GitHub Copilot testing helps you write tests faster and keeps everything in your workflow. Just use @Test in GitHub Copilot Chat to get started.
C++
App modernization
GitHub Copilot app modernization for C++ is now available in Private Preview.
We're excited to share that GitHub Copilot app modernization for C++ is now in Private Preview. GitHub Copilot app modernization for C++ helps you migrate your C++ projects to the latest version of the Microsoft C++ (MSVC) Build Tools.
Want to try it? Sign up for the Private Preview at aka.ms/cppagents.
Code editing tools for agent mode
C++ Code Editing Tools for GitHub Copilot Agent Mode are now available in Private Preview.
We're excited to share that C++ Code Editing Tools for GitHub Copilot Agent Mode are now in Public Preview. These tools give Copilot deeper context about your code, letting it:
- View all references across your codebase
- Understand metadata like type, declaration, and scope
- Visualize class inheritance hierarchies
- Trace function call chains
To get started:
- Make sure GitHub Copilot Agent Mode is enabled in your IDE.
- Open a C++ project.
- Go to Tools → Options → GitHub → Copilot and enable Enable C++ tools to be used by Copilot.
- Restart your IDE or solution.
- Enable specific tools using the Tools icon in Copilot Chat.
Note: Tool names and UI may change during Public Preview.
Once enabled, Copilot can use these tools to give you more accurate, context-aware suggestions.
For best results, be specific with your prompts and use models optimized for tool-calling. Learn more about available models at AI model comparison - GitHub Docs
Improve your build time
Automatically find and fix build performance issues in C++ projects using MSVC.
GitHub Copilot build performance for Windows analyzes your MSVC-based C++ projects to identify build performance issues and apply fixes to improve your build times. This agent can help you automatically optimize your codebase and reduce build times.
@BuildPerfCpp in GitHub Copilot chat to optimize your build time" />
Want to try it? Sign up for the Private Preview at aka.ms/cppagents
Extensibility
Experimental Instance relocated
Added Start Experimental Instance and Reset Experimental Instance commands to the Extensions menu.
Start and reset experimental instance commands are now in the Extensions → Extension Development menu. You don't need to use Windows Start menu shortcuts to launch or reset the experimental Visual Studio instance anymore.
These commands are easier to find and help you avoid accidentally launching root-suffixed instances, which are only for Visual Studio extension development.
You can still use the old shortcuts at
[installdir\vssdk]if you prefer.
From our entire team, thank you for choosing Visual Studio! For the latest updates, resources, and news, check out the Visual Studio Hub and stay in touch.
Happy coding!
The Visual Studio team
Note
This update may include new Microsoft or third-party software that is licensed separately, as set out in the 3rd Party Notices or in its accompanying license.











Left: Slimmer left margin with inline Quick Actions icon, Right: Previous margin











@BuildPerfCpp in GitHub Copilot chat to optimize your build time" />