ReSharper 2025.2, now in public preview, ships with a long-awaited architectural overhaul that moves the bulk of its code analysis, indexing, and computation into a dedicated 64-bit worker process, dramatically reducing how often Visual Studio’s UI thread locks up. JetBrains claims cumulative UI freezes drop by roughly 61 percent during solution startup in its lab tests, a figure that may finally silence years of complaints about the extension making the IDE unusable.

Six Years in the Making: Why ReSharper Had to Leave the UI Process

From its earliest days, ReSharper has been a love-it-or-leave-it extension for .NET developers. Its deep code inspections, lightning-fast refactorings, and code generation tools transformed Visual Studio into a far more powerful environment. Yet that same sophistication came at a cost: all that analysis ran inside Visual Studio’s own process. Even as Visual Studio moved to 64-bit, the UI thread remained a single point of contention. Large solutions, especially those with hundreds of projects, could trigger freezes lasting seconds while ReSharper crunched through code. Forum posts and social media abound with developers complaining that ReSharper made Visual Studio “unusable.”

JetBrains began wrestling with this problem more than six years ago. The original goal was to separate compute-heavy workloads from the UI thread, taking advantage of Visual Studio’s eventual move to 64-bit and the multiprocess architecture already proven in JetBrains’ own Rider IDE. The work was “massively complex,” requiring a rearchitecture of component lifecycles, dependency injection, and all the features that assumed shared memory and synchronous access to UI objects.

How Out-of-Process Mode Works

With ReSharper 2025.2, the default in-process engine still exists, but developers can switch to the new out-of-process (OOP) mode. Once enabled, ReSharper spawns a separate 64-bit process—the “worker”—that handles most analysis, code inspections, indexing, and caching. The Visual Studio UI process retains only what must run there: editor text buffers, COM API interactions, and UI bindings.

Communication between the two processes happens over an inter-process communication (IPC) protocol tuned for low latency. The scheduler is designed so that heavy work never blocks the UI thread. JetBrains’ engineers had to carefully separate features that genuinely need access to Visual Studio internals—like debugger visualizers or in-place refactoring dialogs—from those that could be safely relocated.

This dual-mode design adds maintenance complexity because the codebase must support both in-process and out-of-process paths. JetBrains acknowledges that full parity between the two modes will take time.

Benchmarked Performance: The 61% Number

JetBrains published a detailed set of benchmarks using a combination of Event Tracing for Windows (ETW) MessageCheckDelay measurements and custom UI freeze detection. The headline test opens the open-source Orchard Core content management system—a sprawling solution with 223 projects—and measures all UI freezes lasting 100 ms or longer during Visual Studio startup.

  • With ReSharper 2025.1.4 (in-process): cumulative frozen UI time was 26.0 seconds.
  • With ReSharper 2025.2 (out-of-process): frozen time fell to 10.1 seconds.
  • Baseline Visual Studio with no ReSharper: 6.3 seconds.

That 61% reduction comes from a direct comparison of the two ReSharper versions. JetBrains also shared smaller-solution results and typing latency improvements. In the “most realistic typing” scenario, median typing latency dropped from 26.4 ms to 16.7 ms—a difference that users will feel as snappier editing.

These are vendor-conducted lab tests, and JetBrains cautions that real-world numbers will vary based on hardware, solution topology, and other installed extensions. Still, the trend is clear: offloading analysis to a separate process removes a major source of UI jank.

What Breaks: The Feature Parity Gap

OOP mode is off by default and labeled as a preview precisely because several important features are not yet supported. JetBrains maintains a public list of exclusions:

  • AI Assistant and AI-powered features – entirely absent in OOP mode.
  • Debugger integrations – predictive debugger, compiled modules debugging, and debugger visual helpers do not work.
  • Dynamic Program Analysis (DPA) and profiling tools – integration with dotTrace, dotMemory, and dotCover is broken.
  • Template editor, structural search and replace, regular expression validation, diagramming tools – all unavailable.

These limitations stem from the inherent difficulty of decoupling features that require tight UI coupling or direct debugger hooks. JetBrains says work is underway to bring each of these subsystems into the out-of-process fold, but there is no firm timeline. Developers who rely on deep profiling or AI-assisted coding will need to stay on the in-process mode for now.

How to Enable Out-of-Process Mode

JetBrains provides several ways to test the new mode:

  • Open ReSharper → Options → Environment → Products & Features, check “Run ReSharper in separate process,” and restart.
  • Use the menu: Extensions → ReSharper → R# Out-of-Process → Switch to Out-of-Process mode.
  • Press Ctrl+Shift+A and search for “Switch to Out-of-Process mode.”
  • Launch Visual Studio with the command-line flag /ReSharper.OOP to start in OOP mode, or /ReSharper.InProcess to force the old way.

A status-bar indicator lets you flip modes without restarting Visual Studio. JetBrains advises disabling or uninstalling dotTrace/dotMemory/dotCover when using OOP mode, as those products are incompatible with the new architecture.

Who Wins and Who Loses (For Now)

Winners

Developers working with very large solutions or monorepos stand to gain the most. The 61% freeze reduction is most dramatic on projects with hundreds of assemblies. Teams that had previously uninstalled ReSharper because it turned Visual Studio into molasses may now find it usable again, recovering all the refactoring and navigation features they missed.

Short-Term Losers

Anyone whose workflow depends on debugger integrations, performance profiling, or AI code assistance inside ReSharper will have to remain on the in-process path. The loss of AI features is especially notable given the industry’s rush toward Copilot-style assistants. JetBrains’ own AI Assistant is incompatible with OOP mode in this release, which will be a dealbreaker for some.

ReSharper in the Age of AI Coding Assistants

The advent of GitHub Copilot, JetBrains AI Assistant, and other large language model tools has shifted how many developers approach everyday coding tasks. Some argue these AI helpers reduce the need for a heavyweight extension like ReSharper. Yet research from GitClear and others suggests that AI-generated code often introduces near-duplicate or poorly structured code, exactly the kind of mess that ReSharper’s refactoring and cleanup features excel at untangling. Deep code analysis and large-scale refactorings remain a strength that AI alone cannot replace.

Moreover, ReSharper’s codebase is reused extensively in Rider and emerging Visual Studio Code integrations. The architectural investment in out-of-process mode benefits the entire JetBrains .NET ecosystem, not just Visual Studio users.

Practical Guidance for Teams

If you’re considering testing OOP mode, approach it methodically:

  • Start with a small number of developers and run them through typical build, test, and debug cycles.
  • Document which features you miss and use the status-bar toggle to switch back quickly if something breaks.
  • Do not enable OOP on CI or automated build agents until full parity is reached.
  • If your workflow requires dotTrace, dotMemory, or dotCover, stay on in-process mode.
  • Keep an eye on JetBrains’ public issue tracker and blog for updates on when AI and debugger features will be ported.

What This Means for the IDE Landscape

ReSharper’s OOP mode is more than a performance fix; it’s a strategic repositioning. By decoupling analysis from the UI, JetBrains is preparing ReSharper for a future where it can plug into multiple editors—Visual Studio, VS Code, Rider—with a shared backend. The short-term feature gaps are painful, but the long-term payoff could be a consistently responsive tool that no longer penalizes users for the size of their codebase.

The success of this migration hinges on how quickly JetBrains restores missing features. If it can close the parity gap within a few release cycles while keeping the 61% freeze reduction, ReSharper will be in a stronger position than ever to compete with lighter-weight AI assistants and Microsoft’s own built-in tooling.

Conclusion

ReSharper 2025.2’s out-of-process mode is the most consequential architectural change the plugin has undergone in over a decade. JetBrains’ own measurements show a 61 percent drop in cumulative UI freezes and a nearly 40 percent reduction in typing latency—numbers that translate into a tangibly smoother development experience for anyone battling large .NET solutions. The preview nature means important features like AI assistance and debugger integrations are missing, forcing teams to weigh responsiveness gains against missing functionality. For the many developers who have gritted their teeth through years of ReSharper-induced UI hangs, this update is absolutely worth testing today.