{"id":252076,"date":"2025-01-16T09:01:56","date_gmt":"2025-01-16T17:01:56","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/visualstudio\/?p=252076"},"modified":"2025-02-25T07:27:50","modified_gmt":"2025-02-25T15:27:50","slug":"our-favorite-new-visual-studio-features-of-2024","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/visualstudio\/our-favorite-new-visual-studio-features-of-2024\/","title":{"rendered":"Our Favorite NEW Visual Studio Features of 2024"},"content":{"rendered":"<p>Last year, the Visual Studio team delivered many new developer-focused improvements and AI integrations, many of which came directly from your feedback on <a href=\"https:\/\/developercommunity.visualstudio.com\/VisualStudio\">Developer Community<\/a>. In this post, we highlight the team\u2019s favorite features from 2024 that boost productivity, streamline workflows, and enhance your coding experience. Let\u2019s dive in!<\/p>\n<p><div  class=\"d-flex justify-content-center\"><a class=\"cta_button_link btn-primary mb-24\" href=\"https:\/\/visualstudio.microsoft.com\" target=\"_blank\">Download Visual Studio 2022<\/a><\/div><\/p>\n<figure style=\"text-align: center;\"><iframe title=\"YouTube video player\" src=\"https:\/\/www.youtube.com\/embed\/kNQ_eC8tRmA?si=fyL6RNw3cI41ludR\" width=\"560\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/figure>\n<h4><strong>Image Hover Preview: See your images instantly! (Mads Kristensen 00:30)<\/strong><\/h4>\n<p>Struggling to visualize referenced images in your code? Visual Studio\u2019s Image Hover Preview solves this by showing a <strong>quick preview of any image<\/strong>, complete with dimensions and file size, when you hover over its reference. It&#8217;s a small addition with a big impact on productivity.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252078\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-2.png\" alt=\"When you hover an image source it shows a preview in Visual Studio\" width=\"793\" height=\"379\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-2.png 1056w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-2-300x143.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-2-1024x490.png 1024w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-2-768x367.png 768w\" sizes=\"(max-width: 793px) 100vw, 793px\" \/><\/p>\n<p><em>I love this feature!<\/em><\/p>\n<h4><strong>Error Copying Improvements: Copy only what you need (Mads Kristensen 00:55)<\/strong><\/h4>\n<p>Historically, copying error messages might have included detailed data that weren\u2019t necessary to you. With this update, you can copy (Ctrl+C) <strong>just the error description<\/strong>, making it easier to search for solutions online.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252079\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-3.png\" alt=\"Copy now takes just the description from error messages\" width=\"1346\" height=\"532\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-3.png 1346w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-3-300x119.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-3-1024x405.png 1024w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-3-768x304.png 768w\" sizes=\"(max-width: 1346px) 100vw, 1346px\" \/><\/p>\n<p>Before:<\/p>\n<p>Severity Code Description Project File Line Suppression State<\/p>\n<p>Error (active) CS0103 The name &#8216;Test&#8217; does not exist in the current context ConsoleApp1 C:\\Users\\jamont\\source\\repos\\ConsoleApp1\\ConsoleApp1\\Program.cs 7<\/p>\n<p>After:<\/p>\n<p>The name &#8216;Test&#8217; does not exist in the current context<\/p>\n<h4><strong>Drag\/Drop across multiple instances of Visual Studio (Mads Kristensen 1:45)<\/strong><\/h4>\n<p>You can now copy\/paste or <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/copy-files-across-instances-of-visual-studio\/\">drag\/drop files between Visual Studio instances<\/a> seamlessly. This feature works across most project types and enhances workflow efficiency.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-251426\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2024\/11\/word-image-251424-1.gif\" alt=\"gif showing how to drag and drop files into a different instance of VS\" width=\"808\" height=\"455\" \/><\/p>\n<h4><strong>Rename Suggestions: Smarter names for cleaner code (Dalia Ado Sheasha 2:48)<\/strong><\/h4>\n<p>Tired of unclear variable or method names? The Rename Suggestions feature analyzes your code to offer <strong>context-aware naming options<\/strong>. It&#8217;s a lifesaver when working on legacy or inherited projects.<\/p>\n<p><em>I hate naming things; this means I don\u2019t have to!<\/em><\/p>\n<h4><strong>Copilot for Commits: Automated and personalized messages (Jessie Houghton 4:23)<\/strong><\/h4>\n<p>Commit messages just got easier. GitHub Copilot now <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/write-your-git-commits-with-github-copilot\/\"><strong>generates customized commit messages<\/strong><\/a>, ensuring they align with your preferences and cover every change.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2023\/11\/AI-Generated-Commit-1.gif\"><img decoding=\"async\" class=\"wp-image-246159 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2023\/11\/AI-Generated-Commit-1.gif\" alt=\"Image AI Generated Commit 1\" width=\"950\" height=\"534\" \/><\/a><\/p>\n<h4><strong>Memory Layout Viewer: Optimize memory usage (Sy Brand 5:25)<\/strong><\/h4>\n<p>Visual Studio now lets you <strong>visualize memory layout<\/strong>, identify gaps, and optimize memory usage. This is particularly beneficial for projects requiring efficient memory management.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252080\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-4.png\" alt=\"Color coded visual of memory layouts by bytes\" width=\"1301\" height=\"692\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-4.png 1301w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-4-300x160.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-4-1024x545.png 1024w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-4-768x408.png 768w\" sizes=\"(max-width: 1301px) 100vw, 1301px\" \/><\/p>\n<h4><strong>Async Debugging made easy (Andy Sterland 6:23)<\/strong><\/h4>\n<p>Debugging async\/await code is notoriously tricky. The new Async Debugger in Visual Studio provides <strong>clearer insights<\/strong> into async calls, making it easier to identify issues and debug effectively.<\/p>\n<h4><strong>New .NET MAUI templates: Start projects with ease (Rachel Kang 8:08)<\/strong><\/h4>\n<p>With this update to .NET MAUI templates, you can now include <a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/dotnet-maui-welcomes-syncfusion-open-source-contributions\/\">sample content<\/a> to jump-start your project. These templates integrate popular toolkits for a smoother development experience.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252081\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-5.png\" alt=\"Showcasing an example .NET MAUI template\" width=\"1431\" height=\"725\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-5.png 1431w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-5-300x152.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-5-1024x519.png 1024w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-5-768x389.png 768w\" sizes=\"(max-width: 1431px) 100vw, 1431px\" \/><\/p>\n<h4><strong>Everything Copilot (Bruno Capuano 9:50)<\/strong><\/h4>\n<p>You can now ask domain specific questions in Copilot Chat. Which, in combination with Copilot Edits, provides targeted code suggestions that you can add in session. If you want to change up the suggestions, you now can choose between different models in Copilot Chat.<\/p>\n<h4><strong>New Extension Manager and Extension Hot Loading (Maia Kelner 11:11)<\/strong><\/h4>\n<p>Installing extensions no longer interrupts your flow. With <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/introducing-a-powerful-new-extension-manager\/\">extension hot loading<\/a>, you can install and use extensions <strong>without restarting Visual Studio<\/strong>.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2023\/07\/word-image-243995-1.gif\"><img decoding=\"async\" class=\"aligncenter  wp-image-243996\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2023\/07\/word-image-243995-1.gif\" alt=\"Full-length extension descriptions in the Extension Manager\" width=\"872\" height=\"648\" \/><\/a><\/p>\n<p><em>Check out the new <\/em><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=luislhg.BrightXaml\"><em>Bright Xaml Extension<\/em><\/a><em>!<\/em><\/p>\n<h4><strong>Unreal Engine integration: Game development streamlined (David Li 12:55)<\/strong><\/h4>\n<p>Game developers rejoice! Open Unreal Engine projects <strong>directly in Visual Studio<\/strong>, configure targets, and leverage the <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/unreal-engine-toolbar-in-visual-studio\/\"><strong>new Unreal Engine toolbar<\/strong><\/a> for efficient workflows.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252082\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-6.png\" alt=\"New Unreal Engine toolbar, options to attach processes, scan blueprints, configure tools, and more\" width=\"1024\" height=\"576\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-6.png 1024w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-6-300x169.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-6-768x432.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h4><strong>Code Search (Sandy Armstrong 14:13)<\/strong><\/h4>\n<p>Use Ctrl + T to launch search. You can now search for <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/search-scoping-helps-you-find-what-youre-looking-for\/\">specific scopes<\/a> (current document, entire solution, etc)<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252083\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-7.png\" alt=\"Code search ability to search by entire solution, project, or document\" width=\"900\" height=\"599\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-7.png 900w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-7-300x200.png 300w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-7-768x511.png 768w\" sizes=\"(max-width: 900px) 100vw, 900px\" \/><\/p>\n<p><em>You can dock the feature search window!<\/em><\/p>\n<h4><strong>.NET Aspire integrations (James Montemagno 15:09)<\/strong><\/h4>\n<p>You can now easily orchestrate your existing .NET applications and services with a <a href=\"https:\/\/learn.microsoft.com\/dotnet\/aspire\/fundamentals\/setup-tooling?tabs=linux&amp;pivots=visual-studio\">single click<\/a>. Visual Studio will automatically create the .NET Aspire `AppHost` and `ServiceDefault` projects and configure everything for you! From the same context menu in Visual Studio you can easily add .NET Aspire integrations to your project by bringing up a filtered NuGet search. Check it out!<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-252084\" src=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-8.png\" alt=\"Highlighting .NET Aspire Orchestrator Support\" width=\"618\" height=\"372\" srcset=\"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-8.png 618w, https:\/\/devblogs.microsoft.com\/visualstudio\/wp-content\/uploads\/sites\/4\/2025\/01\/word-image-252076-8-300x181.png 300w\" sizes=\"(max-width: 618px) 100vw, 618px\" \/><\/p>\n<h3><strong>We love your feedback!<\/strong><\/h3>\n<p>These innovations and improvements are a direct result of your input. The Visual Studio team thrives on feedback, and your suggestions continue to make it better. Keep sharing your thoughts and ideas on <a href=\"https:\/\/developercommunity.microsoft.com\/VisualStudio\">Developer Community<\/a>. We\u2019re building the future of development together!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Last year, the Visual Studio team delivered many new developer-focused improvements and AI integrations, many of which came directly from your feedback on Developer Community. In this post, we highlight the team\u2019s favorite features from 2024 that boost productivity, streamline workflows, and enhance your coding experience. Let\u2019s dive in! Image Hover Preview: See your images [&hellip;]<\/p>\n","protected":false},"author":68130,"featured_media":252085,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[6887,6888,1030,6962,6961,6967,6868,6963,155],"tags":[6873,6947,6964,6883,1665,294,6924,526,6911],"class_list":["post-252076","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-artificial-intelligence","category-copilot","category-data","category-debug","category-git","category-github-copilot","category-performance","category-productivity","category-visual-studio","tag-net-maui","tag-aspire","tag-code-search","tag-copilot","tag-debugging","tag-extensions","tag-github-copilot","tag-productivity","tag-unreal-engine"],"acf":[],"blog_post_summary":"<p>Last year, the Visual Studio team delivered many new developer-focused improvements and AI integrations, many of which came directly from your feedback on Developer Community. In this post, we highlight the team\u2019s favorite features from 2024 that boost productivity, streamline workflows, and enhance your coding experience. Let\u2019s dive in! Image Hover Preview: See your images [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/posts\/252076","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/users\/68130"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/comments?post=252076"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/posts\/252076\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/media\/252085"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/media?parent=252076"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/categories?post=252076"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/visualstudio\/wp-json\/wp\/v2\/tags?post=252076"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}