Client downloads / Platforms and architectures

V2Ray Download

v2rayN for desktop, v2rayNG for Android.
Choose your operating system first, then the package that matches your device.

v2rayN, v2rayNG, and v2flyNG are free, open-source clients. Downloading and installing one does not configure a connection; you'll also need a valid server configuration or subscription.

  • VMess
  • VLESS
  • Trojan
  • Shadowsocks
  • REALITY

Download options

Choose your operating system

For desktop, choose v2rayN. On Android, start with v2rayNG; consider v2flyNG if you need the V2Fly core. Download buttons are at the top of each client card, with installation and architecture notes below.

Windows client

Both are v2rayN builds. Choose Desktop or the classic WPF interface based on how you prefer to work.

v2rayN

Windows · x64

Recommended

Listed version7.24.1

Desktop edition

Download v2rayN Desktop · x64

A newer cross-platform UI. A good first choice for a fresh install or if you want a consistent experience across desktop operating systems.

Classic WPF edition

Download v2rayN WPF · x64

The classic, stable Windows interface. Best if you're used to traditional menus, server lists, and desktop workflows.

Both downloads are ZIP archives. Extract each to its own folder, then follow the included instructions to run the installer. Don't launch it from the archive preview window.

System and installation requirements

CheckHow to choose
System architectureBoth installers on this page are x64. Check your system type under Settings → System → About.
Windows versionUse a supported version of Windows. Check the current release notes and installer prompts for the exact minimum version and runtime requirements.
File locationChoose a local folder you can write to, with enough space for extraction, installation, and configuration files.
PermissionsStart with standard user permissions. Grant additional permissions for TUN or network components only when prompted for those features.

Desktop and WPF mainly differ in UI technology and how workflows are presented. The interface alone doesn't determine whether a particular protocol is supported; that also depends on the included core and configuration fields. If you're new to the client, start by importing a subscription, selecting a server, and setting the system proxy before customizing routes.

Before upgrading from an older version, export your configuration and quit the old process. If you're switching interface editions, keep the original folder and install into a new one. Migrate using an import method supported by the client; don't mix program files from different versions.

If the window opens after installation but browser traffic is unchanged, check the system proxy status before reinstalling. The system proxy affects only apps that follow the system proxy settings. For other traffic-routing options, see the mode descriptions in the setup guide.

After installation

Configuration, updates, and permissions

Get a basic connection working first, then adjust routing and DNS one setting at a time. When something goes wrong, keeping the error message is more useful than repeatedly reinstalling.

First install: import a valid configuration

The client manages configuration and runs the core; it doesn't include a ready-to-use server. Get a valid subscription URL, share link, or compatible configuration file, then use the relevant import option in the client. After importing, check the server type, transport, security layer, and required fields. Don't mistake a webpage URL for a subscription URL.

After selecting a server, check the system proxy mode on desktop or approve the system connection request on Android. Test with a regular webpage request and check the client logs; a single latency test doesn't prove that all apps are using the proxy.

Read the subscription import and connection guide →

Upgrade or migrate: keep your existing settings

Before updating, preserve subscription groups, custom routes, DNS, listening ports, and other manual changes. Prefer the client's built-in export feature. Configuration files may contain credentials, so store exports somewhere secure and don't upload them to public pages.

Quit the old version before installing so its files aren't in use. After updating, check that your configuration is still present and the proxy mode is correct before restoring launch-at-startup or automatic updates. When switching clients, test one configuration first; migrate the full list only after confirming the fields are compatible.

Installation help and troubleshooting →

How clients, cores, and subscriptions fit together

GUI clients in the Project V ecosystem provide server lists, subscription management, and access to system network settings. The core handles proxy protocols and connections. V2Fly and Xray are related core projects that have evolved separately, so check compatibility against specific versions. If a security layer or transport option is missing after installation, check whether the core supports it rather than choosing a similarly named protocol at random.

A subscription distributes configuration; it isn't a client installer. A failed subscription update and a failed installation are different problems: for the former, check the URL, request errors, and response format; for the latter, check OS compatibility, architecture, and installation permissions. For background on VMess, VLESS, Trojan, Shadowsocks, and REALITY, read the protocol and core reference, then choose a client that supports your configuration.

Download questions

Common installer questions

Narrow down the issue by interface, device architecture, and when the error occurs.

Windows: Should you choose Desktop or WPF?

If this is your first time, start with Desktop, which uses a newer cross-platform interface. Choose the classic, stable WPF interface if you prefer the traditional Windows experience. Both are v2rayN builds for x64. Export your settings before switching, and don't mix the two versions' program folders.

Android: What's the difference between arm64 and Universal?

Most mainstream phones released after 2015 can start with arm64, but the device's supported ABI is the deciding factor. The Universal build includes multiple architectures and can help if you can't identify your device's architecture or the arm64 package is incompatible. Universal does not mean support for every older Android version.

Can I connect right after installing the client?

The client does not provide a server. After installation, import a valid subscription link, share link, or compatible configuration, then select a server and set the proxy mode. Subscription URLs may contain credentials; don't share them publicly or paste them into an unfamiliar conversion service.

What should I save before updating the client?

Export your configuration using the client, and note your subscription groups, custom routes, DNS, and local listening settings. Quit the running client before updating. When switching interfaces or cores, don't assume every configuration field will carry over unchanged.

What if the download won't open or installation fails?

First, determine whether the problem is downloading or installing. For download failures, note the browser's message and try again later. For installation failures, check the OS version, processor architecture, available storage, and whether older processes have exited. Read any security warning carefully; don't disable system protections to bypass an unknown risk.

Can I switch directly between v2rayNG and v2flyNG?

Both are Android GUI clients, but v2rayNG uses the Xray core and v2flyNG uses the V2Fly core. Both may import common share links, but protocol, security-layer, and configuration support depends on each version. Before using configurations such as REALITY, confirm support in the target client and core.