These reviews focus on configuration workflows and migration effort. Proxy service, subscription content, and client software are three separate things; installing a client doesn't provide working proxy nodes.
Top pickActively maintained
Clash Plus: a starting point for new installs and multiple devices
Clash Plus is a solid default starting point. Install it on your platform, import a compatible subscription, select a proxy group, and only then adjust how traffic is routed. This makes it easier to distinguish an installation problem from an unexpected routing result, instead of changing several settings at once and losing track of the cause.
This site provides installers for Windows, macOS, Android, and iOS, making Clash Plus a good fit for users with devices across platforms. Network permissions, background restrictions, and available features differ by operating system, so don't assume every setting works the same way just because the client has the same name. Check subscription format, protocol support, and each platform's network integration rather than judging by screenshots.
If you only need everyday subscription and proxy group management, start by testing those features. Compare other desktop clients only if you run into a genuine need for configuration extensions. Find more product information at clashplus.io.
View Clash Plus downloads →
Advanced desktop useActively maintained
Clash Verge Rev: TUN and configuration extensions
Clash Verge Rev uses mihomo and suits desktop users who need finer control over traffic routing and configuration merging. Installers are available here for Windows, macOS, and Linux. Beyond simply importing subscriptions, its strengths lie in how service mode, TUN, and local configuration extensions work together.
The learning curve mainly comes from permissions and override order: successfully installing a service doesn't mean system routing changed as expected, and a saved local override isn't necessarily active in the final configuration. For troubleshooting, check the effective configuration and logs first, then inspect DNS, routes, and rule matches. That's usually more useful than repeatedly switching proxy nodes.
A good fit for users who maintain custom rules, manage multiple subscriptions, or debug desktop networking. If you only need a browser proxy, start with the system proxy and leave the advanced options off until you need them.
View desktop client downloads →
Cross-platform workflowActively maintained
FlClash: a consistent workflow across desktop and Android
FlClash is based on mihomo, with Windows, macOS, Android, and Linux installers available here. It suits users who switch between a computer and Android device and want less of a learning curve between interfaces. Subscriptions, proxy groups, and connection status work in similar ways, but traffic routing must still be configured separately on each device.
When migrating existing YAML, check rule providers, local paths, and DNS settings. Relative paths from a computer may not work on a phone, and Android VPN authorization doesn't translate to desktop service permissions. Reuse the portable parts of the configuration, but keep platform-specific settings separate.
Don't assume resource use based solely on the cross-platform framework. Real-world performance depends on the operating system, configuration size, connection count, and log level. Test your own subscription with sleep and wake, network switching, and background operation before committing to it as your everyday client.
View FlClash platform downloads →
Core and configuration managementActively maintained
Clash Nyanpasu: check which core is in use
Clash Nyanpasu suits users comfortable with desktop configuration management; this site's download page provides a Windows build. Evaluate the interface and the running core separately: core management options and available builds can change, so don't assume every protocol or configuration field is supported based on the app's name alone.
If you choose mihomo, check the subscription against mihomo syntax and behavior. For configurations built for older cores, verify protocol, rules, and DNS options first. Save a working copy before switching cores and change one variable at a time to pinpoint whether a problem comes from the interface, generated configuration, or core differences.
A good fit for users comparing configurations and refining a desktop workflow. If you just want to get connected, start with the recommended option on this site; the number of optional cores shouldn't be a requirement for choosing a client.
View Windows downloads →
No longer maintainedArchived reference
Clash for Windows: a migration target for legacy configurations
Clash for Windows is often abbreviated to CFW, and this site retains an archived Windows download. Common archived builds use Clash Premium, so don't treat CFW as an actively updated mihomo client. The menu locations, field names, and service installation steps in older online guides may also differ from those for current operating systems and clients.
A working legacy setup doesn't mean it's suitable for new protocols or current operating systems. If a subscription fails to parse, first check whether it includes node types unsupported by the older core. Reinstalling the same archived build won't resolve differences in protocol support. For new devices, choose an actively maintained alternative.
Before migrating, save your subscription source, custom rules, proxy group names, and port settings. In most cases, you don't need to copy the entire old configuration directory over to a new client; don't copy old cache or service files either. Get the new client running on its own, then restore personal settings one at a time.
View Windows client alternatives →
Per-app routing on AndroidActively maintained
Clash Meta for Android: per-app routing on mobile
Clash Meta for Android, often called CMFA, follows the Clash Meta / mihomo line. It suits Android users who want to manage configurations, choose proxy groups, and control which apps use the VPN. When installing, choose the right package for ARM64, ARM, or universal devices so an install issue isn't mistaken for a subscription problem.
Android connections typically require system VPN authorization. After granting permission, check whether another VPN app is using the same connection and whether the system is restricting background activity. Per-app controls determine which apps are routed; domain and IP rules determine which proxy policy applies to that traffic. These are separate settings.
If the connection drops when your phone sleeps, check battery management, background permissions, and network switching before changing clients. For long-term use, test switching between Wi-Fi and mobile data and confirm the notification's connection status matches what the app shows.
View Android downloads →
Independent configuration formatActively maintained
Surfboard: check subscription format first
Surfboard is an Android proxy client, but it's not a Clash YAML client with a different interface. It has an independent implementation and uses Surge-style configuration, making it a fit for users who already have a compatible subscription and know the relevant rule and policy syntax. Before choosing it, confirm that your subscription provider explicitly supports this format.
Renaming a file extension from YAML to something else doesn't convert the format. Node definitions, proxy groups, rules, and DNS each have their own structures. Similar concepts don't guarantee a one-to-one match. Before importing, confirm protocol and configuration support; after conversion, check the default policy and rule order.
If your service only provides Clash configuration, a client that supports that format is usually the more straightforward choice. If you do need to convert, use a trusted method and avoid submitting subscription links containing credentials to unknown conversion services.
View Android client options →
No longer maintainedArchived macOS build
ClashX Meta: migrating from a legacy menu bar workflow
ClashX Meta is a macOS menu bar client that follows the Clash Meta core line. This site retains archived downloads for Apple Silicon and Intel Macs. Despite the name's connection to ClashX, it's not the default recommendation for every Mac user. For new installs, consider actively maintained options such as Clash Plus, Clash Verge Rev, or FlClash.
Protocol support in archived builds depends on the specific core, so don't assume current mihomo documentation describes all their capabilities. OS upgrades can also cause compatibility issues with permissions, helper components, and traffic routing. When that happens, migrating is often easier to maintain than continuing to patch an old setup.
Before switching clients, turn off the old system proxy and auto-start, and note your original ports and custom rules. Once the new client is working, remove old helper components. Avoid running two clients that both change system proxy settings; the menu bar status may not match the actual outbound route.
View macOS client alternatives →