Client downloads / platforms and architectures

V2Ray Client Downloads

Choose v2rayN for desktop and v2rayNG for Android. Check your operating system and processor before choosing a package.

  • VMess
  • VLESS
  • Trojan
  • Shadowsocks

Desktop clientv2rayN · Desktop / WPF

Android clientv2rayNG / v2flyNG

Before you startSubscription URL or server configuration

Choose your operating system

Packages and System Requirements

Compare clients →
v2rayN

v2rayN

Windows · x64

Recommended

Desktop is the modern cross-platform UI; WPF is the classic, stable version with a familiar Windows desktop layout. Desktop is a good place to start.

Current listing 7.24.1 · ZIP archive

Extract the archive to a dedicated folder, then run the installer or launcher inside. Don't launch it from the archive preview.

Choosing between Desktop and WPF

The main difference is the interface technology and layout—not the subscription service. Desktop suits users who want a similar experience across desktop platforms; WPF suits those familiar with classic menus and settings. Menu locations may change between interfaces and versions. If a label differs, look for the setting with the same purpose.

These are x64 packages. Check Settings → System → About to confirm that both your processor and system support this architecture. If startup reports a missing runtime, check the error for the required .NET Desktop Runtime version. Don't install an arbitrary runtime based on the client name alone.

Exit the old app and back up your settings before switching versions. Keep a copy of the original folder so you can restore it. Once the new version has the right subscription groups, routes, and local ports, you can clean up the old files. Don't let two processes control the system proxy at the same time.

Before installing on Windows

CheckRequirements and steps
System and architectureUse a Windows version that is still supported by its vendor. This page provides x64 packages. Check the installer prompt and release notes for the exact minimum Windows version.
Install locationUse a dedicated folder that your account can write to. Don't overwrite a directory used by a running app.
RuntimeInstall any required runtime based on the package type and startup prompts. Bundled and system-dependent packages may have different requirements.
Proxy controlThe standard system proxy and TUN have different permission requirements. Start with the system proxy, then consider TUN if needed.

First launch / configuration location

After installation
Import a subscription and set up the proxy

The client is a graphical tool for configuring and running proxy connections. Installing it doesn't provide connection details. First, prepare a subscription or server information you're authorized to use.

View the step-by-step guide
  1. Import a configuration. In desktop v2rayN, open “Subscription Group,” enter the subscription URL, and save it. Then update the subscription. In an Android client, add the URL in the subscription group settings and update it from the main screen. The example URL https://example.com/sub?token=xxxx illustrates the format only; it won't connect to a real service.
  2. Choose a route and configuration. Check that the selected configuration is the one you intend to use, then choose a routing mode. “Bypass mainland China,” “Global,” and “Direct” determine the core's outbound routing policy. Global mode doesn't automatically route traffic from every app through the local proxy.
  3. Enable routing and test. On desktop, enable “Set system proxy automatically” if needed. On Android, approve VPN access and start the client. Test one app first, then check others. If something fails, note whether it happened during subscription update, client startup, or a request. Repeated reinstalls can erase useful troubleshooting clues.

Choosing and updating packages

Download FAQs

Windows: Should you choose Desktop or WPF?

For a first installation, try Desktop, which uses a modern cross-platform interface. WPF is the classic, stable version for users who prefer the traditional Windows layout. Both require a working configuration. Export your settings before switching, and don't run both clients at once while they control the system proxy.

Android: Should you download arm64 or universal?

Most phones released after 2015 will use arm64, but check your device's processor and system ABI. If you're unsure, choose universal. If Android says the app isn't installed, check system compatibility, available storage, and whether the existing app has a different signing key. Back up your settings before replacing the old app.

Can I connect right after downloading the client?

The package contains the client app, not a working service configuration. You'll need a subscription URL or server details that you're authorized to use. Import them, select a configuration, and start the connection. On desktop, configure the system proxy or TUN as needed. On Android, approve the system VPN prompt the first time you connect.

Will updating the client keep my subscriptions and routing settings?

Whether your settings are retained depends on how the client was installed, its configuration directory, and how the new version migrates data—not just the package name. Before updating, export your settings and note custom routes, ports, and subscription groups. Exit the old app before installing the update. On first launch, check that your settings migrated before enabling the system proxy or TUN.

Can v2rayNG and v2flyNG replace each other?

They are different Android clients: v2rayNG uses the Xray core, while v2flyNG uses the V2Fly core. Support for protocols, transports, and configuration fields may differ. A successful import doesn't guarantee every setting will work. Choose the client that matches your service configuration, and don't run both VPN connections at once.

Why do some apps connect directly even with the system proxy enabled?

The system proxy only affects apps that honor that setting. Terminals, some games, and apps with their own proxy settings may ignore it. First confirm the client is running and the local port matches, then check the app's proxy settings. If you need to cover more apps, consider TUN—but first check for conflicts with existing VPNs, virtual adapters, and routes.