How to Improve RDP Performance on Windows Server

Improve RDP performance on Windows Server with current client, graphics, transport, and visual-effect settings, plus checks for latency and packet loss.
A glowing remote desktop window connects to a Windows server through blue and cyan light trails.

Improve RDP performance on Windows Server by tuning the client, preserving the faster UDP transport when the network supports it, and removing unnecessary visual effects. The changes take about 10 minutes and give you a repeatable way to tell whether the bottleneck is the connection, the server, or the RDP session itself.

Prerequisites

  • A Windows Server 2016, 2019, 2022, or 2025 VPS running Desktop Experience. The menu names below apply to supported releases, although a domain policy can override local settings.
  • An administrator account over RDP, plus VPS console access in case a policy change interrupts your session.
  • A Windows 10 or Windows 11 computer with the built-in Remote Desktop Connection client (mstsc.exe).
  • A stable connection with low packet loss. Microsoft’s general guidance is about 5 Mbps for one 1920 × 1080 session at 30 frames per second; high-motion work needs more.
  • A VPSLake Windows RDP server if you need a Windows host for remote desktop work.

Step 1: Measure the connection and server first

You need a baseline so you can separate network lag from a CPU, memory, or disk bottleneck.

From your local Windows computer, replace SERVER_IP with the public address of the VPS:

ping.exe -n 20 SERVER_IP
Test-NetConnection -ComputerName SERVER_IP -Port 3389

The first command should show consistent times and, ideally, Lost = 0 (0% loss). The second should end with TcpTestSucceeded : True:

TcpTestSucceeded : True

Ping is only a diagnostic; some providers block ICMP even when RDP works. If the test shows packet loss or very uneven latency, fix the network path before changing graphics settings.

Inside the server session, open Task Manager → Performance and watch CPU, Memory, Disk, and Ethernet while reproducing the lag. A busy disk, nearly full memory, or sustained CPU usage above about 90 percent points to a server workload rather than an RDP display setting.

Step 2: Reduce expensive work in the RDP client

The client controls resolution, redirected devices, and several effects that consume bandwidth on every screen update.

On the computer you use to connect, press Windows key + R, run the command below, and select Show Options:

mstsc.exe

Use these settings on the Display and Experience tabs:

  1. On Display, start with a single monitor and a lower resolution such as 1920 × 1080 or 1280 × 720. Higher resolutions and multiple monitors create more pixels to encode and transmit.
  2. On Experience, leave Detect connection quality automatically selected for a normal broadband connection. For a visibly slow or metered link, choose a lower connection profile and clear Desktop background, Font smoothing, Desktop composition, Show contents of window while dragging, Menu and window animation, and Visual styles.
  3. Keep Persistent bitmap caching enabled. It lets the client reuse frequently displayed images instead of downloading them again.
  4. On Local Resources, disable printers, drives, smart cards, audio, and clipboard redirection that you do not need. Each redirected device adds session work and can create delays when the device is slow or unavailable.

Select Connect, then test the same application you used for the baseline. These settings apply to the next connection, so disconnect and reconnect after changing them.

Microsoft’s Remote Desktop session-host performance guidance explains why wallpaper, animations, and other effects increase the amount of data an RDP session must send.

Step 3: Keep the best RDP transport available

Modern RDP can use UDP for most session traffic while keeping TCP for connection setup and fallback; UDP usually feels more responsive when the path allows it.

On the server, open an elevated PowerShell window and confirm that the Windows Firewall has the built-in Remote Desktop rules available:

Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Select-Object DisplayName,Enabled,Profile,Direction,Action

If the rules are disabled, enable the group rather than disabling the firewall:

Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

The provider-level firewall must also allow TCP 3389 and UDP 3389 from only the source addresses that need RDP. If you use a non-default RDP port, substitute that port in both the Windows and provider firewall rules.

For a session host that is managed by local policy, open the editor:

gpedit.msc

Go to Computer Configuration → Administrative Templates → Windows Components → Remote Desktop Services → Remote Desktop Session Host → Connections → Select RDP transport protocols. Set the policy to Enabled, choose Use either UDP or TCP, and select Apply → OK. Run the following command, then reconnect:

gpupdate /force

Expected output includes:

Computer Policy update has completed successfully.
User Policy update has completed successfully.

Leave this policy Not Configured when you want Windows to choose the transport automatically. Do not use the old RemoteFX graphics policies from older guides: RemoteFX vGPU was disabled for security reasons and removed from current Windows releases.

Step 4: Lower server-side visual overhead when needed

Windows visual effects and background applications compete with the application you are trying to use over RDP.

Inside the server session, press Windows key + R, enter the performance settings command, and select OK:

SystemPropertiesPerformance.exe

On the Visual Effects tab, select Adjust for best performance, or choose Custom and keep only Smooth edges of screen fonts if readable text matters. Select Apply → OK. This is a per-user setting, so repeat it for each RDP user who needs the leaner desktop.

Next, open Task Manager → Startup apps and disable only applications that are not needed for the server’s role. Do not disable Windows security software or a service required by a production application. On a multi-user host, also close unused applications and avoid running animated dashboards, 4K video, or GPU-heavy software through a normal VPS session.

Verify the improvement

Reconnect with the same RDP file, resolution, and application used in Step 1. Scroll a document, drag a window, and open a representative workload for one minute. The session should respond without long pauses, and Task Manager should show that the server has CPU, memory, and disk headroom.

On the server, confirm that RDP is listening on the expected TCP and UDP endpoints:

Get-NetTCPConnection -LocalPort 3389 -State Listen | Select-Object LocalAddress,LocalPort,State
Get-NetUDPEndpoint -LocalPort 3389 | Select-Object LocalAddress,LocalPort

Expected output contains a TCP listener and, when UDP is enabled, a UDP endpoint:

LocalAddress LocalPort State
------------ --------- -----
0.0.0.0          3389 Listen

A missing UDP endpoint does not automatically mean the session is broken; TCP fallback is valid. The practical test is whether the same workload now scrolls and opens more smoothly without packet loss or resource saturation.

Troubleshooting

RDP is still slow after the visual effects change

The cause is probably network latency, packet loss, or an overloaded VPS rather than wallpaper or animations. Repeat the ping.exe test, then watch CPU, Memory, Disk, and Ethernet in Task Manager while the lag occurs; move large downloads and backups outside busy session hours or choose a larger VPS when the server is resource-bound.

The first connection is delayed, or UDP causes an internal error

UDP 3389 is being blocked by Windows Firewall, the provider firewall, or the network between client and server. Allow UDP 3389 through every firewall that protects the server, or set Select RDP transport protocols → Enabled → Use only TCP as a compatibility fallback; TCP is slower for some workloads but avoids a failed UDP negotiation.

The session is blurry or scrolling consumes too much bandwidth

The display resolution, monitor count, or visual effects are too demanding for the available path. Reopen the RDP client, use one monitor at 1280 × 720 or 1920 × 1080, select a lower experience profile, and disable wallpaper, animations, desktop composition, and font smoothing if necessary.

gpedit.msc is unavailable or the setting changes back

You may be using Server Core, or an Active Directory or device-management policy is controlling the host. Apply the setting through the domain’s Group Policy Management console, or ask the administrator to review the winning policy with gpresult /h C:\Windows\Temp\gpresult.html; repeatedly changing a local setting cannot override a higher-precedence policy.

FAQ

Is RDP performance determined by internet speed alone?

No. Round-trip latency and packet loss often matter more than peak download speed for typing, scrolling, and window movement. A stable 5 Mbps path can feel better than a faster link with retransmissions or large latency spikes.

Should I enable every RemoteFX setting from an older guide?

No. RemoteFX vGPU was removed from supported Windows releases because of security issues, and several RemoteFX policy names describe legacy behavior. Use current client experience settings, the standard RDP transport policy, and a supported GPU configuration only when the workload actually needs one.

Does opening UDP 3389 make RDP less secure?

UDP is part of RDP’s normal transport, but it should be restricted just like TCP. Allow TCP and UDP 3389 only from trusted addresses when possible, keep Network Level Authentication enabled, and never turn off Windows Firewall to solve a performance problem.

Will a faster RDP session make video streaming smooth?

Not necessarily. RDP is designed for interactive desktop work, not as a general-purpose video-delivery protocol. Lower the video resolution and frame rate, or use a purpose-built streaming method when the workload is continuous video.

Samrat Ghosh
Written by

Samrat Ghosh

Founder & Infrastructure Engineer

Samrat Ghosh is the founder of VPSLake, where he builds and runs the remote desktop and VPS hosting infrastructure the company is built on. He writes hands-on guides about RDP, Windows Server, VPS management and secure remote access - the practical documentation he wishes had…

Previous Article

USA RDP: How to Choose a US Windows RDP

Next Article

Buy RDP With Admin Access: What Full Administrator Means

Write a Comment

Leave a Comment

Your email address will not be published. Required fields are marked *

Subscribe to our Newsletter

Subscribe to our email newsletter to get the latest posts delivered right to your email.
Pure inspiration, zero spam ✨