How to Set a Preferred Wi-Fi Network on Windows 11
Man, trying to keep Windows 11 from constantly jumping between Wi-Fi networks is kind of a pain. Maybe your laptop keeps auto-connecting to a weaker network just because that’s the last one it was hooked up to—really annoying when you want to stick to your favorite network always. It turns out Windows has a priority system for saved networks, but it’s not super straightforward to change that, especially if you’re digging around in settings and nothing’s working. Well, after messing around for a while, I finally found a decent way to set a preferred Wi-Fi network permanently, via command line.
Why does Windows prioritize Wi-Fi networks the way it does?
Basically, Windows remembers networks as profiles—these are like saved configs—and automatically connects to them based on an internal hierarchy. The thing is, if you’ve got multiple networks saved, Windows usually picks the ‘best’ one—meaning the one with the strongest signal or the most recent connection. But it can get all muddled, especially if profiles aren’t cleaned up or if networks have similar settings. This leads to your device connecting to a weaker or less preferred network, which totally ruins your workflow or streaming. Not exactly helpful when you’re trying to get things done without interruptions.
Why you might need to explicitly set a preferred network
If there’s a particular Wi-Fi you always want your device to connect to first—like your home network or a secured office one—then you need to tell Windows explicitly. Just relying on the automatic priority isn’t enough. It defaults to the strongest signal or last connected, so you have to really get into the nitty-gritty and change the priority order or set the network as your favorite. And honestly, it’s not super obvious how to do that in Windows 11’s GUI, which is why I turned to the command line.
Managing Wi-Fi priorities with Command Prompt or PowerShell
This was a bit intimidating at first—mostly because I don’t usually mess with netsh commands. But honestly, it’s the most reliable way. First, you gotta run your command prompt or Windows Terminal as admin. If you’re not doing that, none of the commands will work. Right-click on Start or search for cmd or Windows Terminal, then pick Run as administrator. PowerShell works too, just make sure to launch it elevated.
Once you’re in, you can see all your saved Wi-Fi profiles with this command:
netsh wlan show profiles
This returns a list with the profile names—these are some weird labels sometimes, so be precise. Copy the exact name of the profile that you want to prioritize, including any spaces or special characters (enclose in quotes if needed).
Next, you’ll want to set that profile’s priority higher. Use this command:
netsh wlan set profileorder name="YourNetworkName" interface="Wi-Fi" priority=1
Be sure to replace "YourNetworkName"
with the exact profile name from the previous command. The priority=1
makes it top of the list. If you have other profiles, you can assign them priorities like 2, 3, etc., to reorder them manually. This way, your favorite network will be at the top of the priority list, and Windows should connect to it first when available.
Sometimes, your interface isn’t called just Wi-Fi. To check what you’ve got, run:
netsh wlan show interfaces
This shows the current connection info and interface name, which can be something like Wireless or Wi-Fi 2. Make sure your commands match that exactly; otherwise, they won’t do anything.
Important things to keep in mind
First, make sure the Wireless AutoConfig service (called WlanSvc in services.msc) is running. If it’s stopped, your changes won’t stick or may not apply at all. To check, hit Win + R, type services.msc
, then find WlanSvc. Set it to Automatic and start it if it isn’t running. On my older ASUS, it was buried in some obscure menu, so yeah, you have to hunt for it.
If you want this to be more automated or apply across multiple profiles, scripting with PowerShell might be the way to go, but for a single tweak, these netsh commands do the job. Just double-check your interface name—if it’s named differently, your commands will fail.
What to do after changing priorities
After you make your adjustments, a quick reboot isn’t a bad idea. Windows can be stubborn about recognizing the new order. Or, disconnect from your current Wi-Fi, then reconnect, and see if it picks your preferred network first. If it keeps connecting somewhere else, double-check the profile names and priorities, and consider deleting and re-adding profiles if they’re misbehaving.
TL;DR / Final tips
- Run command prompt or PowerShell as admin.
- Use
netsh wlan show profiles
to see your networks. - Set profile order with
netsh wlan set profileorder name="Network" interface="Wi-Fi" priority=1
. - Verify your interface name with
netsh wlan show interfaces
. - Make sure the Wireless AutoConfig service is running.
- Restart or disconnect/reconnect for changes to kick in.
Hope this helps — it took me way too long to figure out how to get Windows to respect my preferred network. It’s not perfect, but it’s way better than the default jumble. Anyway, hope this saves someone else a weekend of trial and error.