Affiliate disclosure: This guide contains affiliate links. As an Amazon Associate, we earn from qualifying purchases at no extra cost to you. Learn more.
Local co-op is great, but sometimes your gaming partner is across the country. RetroArch netplay lets you play retro games together over the internet, so you can run through Streets of Rage or trade blows in Street Fighter II without being in the same room. It takes a little setup, and a stable connection matters, but once it works it feels like magic. Two handhelds, two players, one shared game.
This guide explains how netplay works, how to host and join a session, and how to keep matches smooth. We frame all of this around playing games you both already own.
Affiliate disclosure: This page contains affiliate links. As an Amazon Associate, we earn from qualifying purchases at no extra cost to you.
First, There Are Two Different Approaches
This is worth sorting out before you start, because picking the wrong one wastes an evening.
Approach one is state syncing, and that is what RetroArch netplay does. Two copies of the same emulator run the same game, and the emulator keeps both machines in the same state across the internet. The emulator is doing the networking. This is the rest of this guide.
Approach two is a virtual LAN. Instead of syncing anything, you put both devices on one private network, so the emulators believe they are sitting next to each other. Then each game's own local wireless or LAN multiplayer runs exactly as the developers built it. The emulator does not know the internet is involved.
Which one you need depends entirely on the game.
| RetroArch netplay | Virtual LAN | |
|---|---|---|
| What it syncs | Emulator state | Nothing, it only connects you |
| Works with | Any game, including single player ones | Only games that shipped local or online multiplayer |
| Systems | Anything RetroArch emulates | DS, 3DS, Switch, GameCube, Wii, PSP, PS2 |
| Runs on | Linux handhelds, Android, PC | Android only, for now |
| Setup | Match cores and game files | Install an app, share a code |
If you want to play Streets of Rage co-op or Street Fighter II against a friend, netplay is your answer and it works on a cheap Linux handheld. If you want Mario Kart DS download play, Monster Hunter on PSP, or a four player Wii game, netplay will not help you and the virtual LAN approach will. We cover that option in our guide to Emufii, which is the app that does it.
How Netplay Works
RetroArch netplay connects two or more copies of RetroArch running the same game. One person hosts, the other joins, and RetroArch keeps both games in sync over the internet. It works across devices too, so a handheld can play with someone on a PC, as long as both run the same core and the same game.
A few things matter for a good experience. Both players need the exact same game file and the same core. A wired or strong WiFi connection helps a lot. And lower-latency games, like 2D fighters and beat 'em ups, work better than twitchy precise ones.
What You Need
- Two devices running RetroArch, such as two handhelds
- The same core installed on both
- The exact same game file on both, ideally matching versions
- A stable internet connection on both ends
Our RetroArch setup guide covers installing cores and games if you are new to it.
Step 1: Match Your Cores and Games
This is the part people miss. Both players must use the same core and the same game file. Even small differences can stop a session from connecting or cause desyncs. Agree on the game ahead of time and confirm you both have the same version. The same goes for any required BIOS.
Step 2: Host a Session
On the host device:
- Load the game you want to play in RetroArch.
- Open the RetroArch quick menu, then go to the Netplay section.
- Choose to host a netplay session.
- RetroArch starts hosting. If you are using the public lobby, your session appears in the netplay room list for others to find.
If you are playing with a specific friend rather than the public lobby, you may need to share your IP address, and the host may need to allow the netplay port through their router. Many setups also work through the public relay server, which avoids router configuration.
Step 3: Join a Session
On the joining device:
- Load the same game and core as the host.
- Open the Netplay section in the quick menu.
- Either pick the host's room from the public lobby list, or connect directly using the host's IP address.
- Once connected, both screens sync up and you are playing together.
Player one is usually the host, and player two is the one who joins. You can confirm and remap controls in the input settings if needed.
Step 4: Settings for Smooth Play
A few settings make a real difference over the internet.
- Use the relay server if direct connection fails. It routes traffic through a public server, which avoids router setup. It can add a little latency, but it is the easiest path.
- Set input latency frames. A small amount of input latency smooths out connections with higher ping. Raise it if you see stutter or rubber-banding.
- Pick the right games. Turn-based, puzzle, and slower action games feel great. Fast fighters work but are more sensitive to lag. Twitchy platformers are the hardest.
- Close other network apps. Downloads and streaming on either end eat bandwidth and add lag.
Troubleshooting
Cannot connect at all. Confirm both players use the exact same core and game version. Try the public relay server to rule out router issues.
The game desyncs partway through. This usually means mismatched game files or cores. Re-confirm both match exactly, then restart the session.
Laggy or stuttering gameplay. Raise the input latency frames a little, switch to a wired connection if possible, and close other network apps. Pick a less twitchy game if lag persists.
One player has no controls. Check the input device assignments. The host is usually player one and the joiner player two.
Prefer Local Play
If your gaming partner is in the same room, local multiplayer is simpler and lag-free. Connect a handheld to a TV and pair two controllers. Our how to pair a Bluetooth controller and best retro handhelds with HDMI out guides cover that setup. For game ideas either way, see our best local multiplayer games list.
When Netplay Is Not the Right Tool
Netplay is built around syncing one emulator's state to another. That makes it the wrong shape for a specific and surprisingly large group of games: the ones that had their own multiplayer on the original hardware.
Mario Kart DS download play, Monster Hunter ad hoc on PSP, PS2 System Link, Wii and GameCube multiplayer, 3DS local wireless. Those games already contain working multiplayer code. What they need is not state syncing, it is a second console to find on the network.
That is what the virtual LAN approach provides. An app builds a private network between you and your friends through your phone's VPN feature, and from inside it the emulators behave as though everyone is on the same Wi-Fi. You share a short code instead of an IP address, and nobody opens a router port.
The practical trade off is that it is Android only, each system needs a specific emulator and often a specific version of it, and it only covers games that had multiplayer in the first place. Our Emufii guide covers which systems and roughly how many games are expected to work, along with the version traps.
The two approaches do not compete. Use netplay for the older 2D libraries on whatever handheld you own, and the virtual LAN route for the DS, PSP, PS2, GameCube and Wii games whose multiplayer you have probably never used.
Recommended Handhelds
Netplay works best on a device with strong Wi-Fi.
For the virtual LAN route you need Android specifically, so an Android handheld covers both approaches. The
and the have the power for the heavier systems where local wireless play matters most, and the remains a good value option with solid wireless.If you only care about RetroArch netplay on 2D systems, a budget Linux handheld with Wi-Fi is plenty. The
handles that comfortably. Just note it cannot run the Android app route at all, which is covered in our Linux vs Android handhelds explainer.New to RetroArch? Start with our RetroArch setup guide.
Frequently Asked Questions
What is netplay?
Netplay is online multiplayer for emulated games. In RetroArch it works by keeping two copies of the same emulator running the same game in sync across the internet, with one player hosting and the other joining.
Do both players need the same game file for netplay?
Yes, and this is the most common reason sessions fail. Both players need the exact same game file, the same version, and the same emulator core. Any mismatch will either stop the connection or cause the game to desync partway through.
Can you play Mario Kart DS or Monster Hunter PSP online through netplay?
Not through RetroArch netplay, which is the wrong tool for those games. They had their own local wireless multiplayer on the original hardware, so what they need is a virtual LAN that makes two devices look like they are on the same Wi-Fi. That is a separate approach, handled by an Android app rather than by RetroArch.
What is the difference between netplay and a virtual LAN?
Netplay syncs emulator state between two machines, so it can work with any game. A virtual LAN syncs nothing and only connects the devices, letting each game's own built in multiplayer do the work. Netplay runs on almost any handheld, while the virtual LAN approach is Android only and covers the DS, 3DS, Switch, GameCube, Wii, PSP and PS2.
Do I need to open ports on my router for netplay?
Often not. RetroArch can route a session through a public relay server, which avoids router configuration entirely at the cost of a little extra latency. Direct connections can be faster but may need a port allowed through.
Which games work best over netplay?
Turn based games, puzzle games and slower action games feel great. Beat em ups and 2D fighters work well. Twitchy platformers and anything demanding frame perfect input are the hardest, because every bit of network latency shows up in your inputs.
Can budget handhelds run netplay?
Yes, for the lighter systems. A cheap Linux handheld with Wi-Fi handles netplay on 8-bit and 16-bit libraries without trouble. What those devices cannot do is run the Android virtual LAN apps, since those need Android.

