How to Set Your Preferred Wi-Fi Network on Windows 11

How to Prioritise a Wi-Fi Network on Windows 11

Trying to stop Windows 11 from constantly switching between Wi-Fi networks can be a bit frustrating. Maybe your laptop keeps automatically connecting to a weaker network just because it was the last one you used — pretty annoying if you want it to stick to your main network. Turns out, Windows has a ranking system for saved networks, but changing it isn’t always straightforward, especially if you’re digging through settings and nothing seems to work. After some fiddling, I finally found a good way to set a permanent preferred Wi-Fi network using the command line.

Why does Windows prioritise Wi-Fi networks the way it does?

Basically, Windows stores networks as profiles—sort of like saved configurations—and connects to them based on an internal hierarchy. If you’ve got multiple networks saved, Windows usually picks the ‘best’ one—meaning the strongest signal or the most recent connection. But it can get a bit muddled, especially if profiles aren’t cleaned up or if networks have similar settings. This can lead to your device connecting to a weaker or less preferred network, which kills your workflow or streaming. Not great when you’re trying to get things done without interruptions.

Why you might need to explicitly set a favourite network

If there’s a specific Wi-Fi network you want your device to connect to first—like your home setup or a secure office network—you need to tell Windows explicitly. Relying on automatic priorities isn’t quite enough. Windows defaults to the strongest signal or the last one you connected to, so you’ll need to tweak the priority order or mark that network as your favourite. Honestly, it’s not obvious how to do this through the Windows 11 interface, which is why I turned to the command line.

Managing Wi-Fi priorities with Command Prompt or PowerShell

It may seem a bit daunting at first—mainly because I don’t usually fiddle with netsh commands—but honestly, it’s the most reliable way. First, open your Command Prompt or Windows Terminal as an administrator. Without doing this, none of the commands will work. Right-click on Start or search for cmd or Windows Terminal, then choose Run as administrator. PowerShell works too, just make sure to run it with elevated privileges.

Once inside, you can list all your saved Wi-Fi profiles with this command:

netsh wlan show profiles

This will give you a list of profile names—sometimes they’re a bit quirky, so be precise. Copy the exact profile name you want to prioritise, including any spaces or special characters (enclose it in quotes if needed).

Next, set that profile’s priority higher with this command:

netsh wlan set profileorder name="YourNetworkName" interface="Wi-Fi" priority=1

Replace "YourNetworkName" with the exact profile name from the previous step. The priority=1 will make it top of the list. If you have other profiles, you can assign them priorities like 2, 3, and so on, to adjust the order manually. This way, your favourite network will be at the top, and Windows should connect to it first whenever it’s in range.

Sometimes, your network interface isn’t simply called Wi-Fi. To check what your interface is called, run:

netsh wlan show interfaces

This will show the current connection details and the interface name, which might be something like Wireless or Wi-Fi 2. Make sure your commands match exactly that name; otherwise, they won’t work.

Important considerations

First up, ensure the Wireless AutoConfig service (called WlanSvc in services.msc) is running. If it’s stopped, your changes won’t stick or might not apply at all. To check, press Win + R, type services.msc, and look for WlanSvc. Set it to Automatic and start it if it isn’t already running. On some older devices, like an ASUS laptop, it might be tucked away in a less obvious menu, so you’ll need to hunt for it.

If you want this process to be more automated or to apply across multiple profiles, scripting with PowerShell could be the way to go. But for a quick fix, these netsh commands do the trick. Just double-check your interface name—if it’s named differently, the commands won’t work.

What to do after adjusting priorities

Once you’ve made your changes, it’s a good idea to restart your PC—Windows can be a bit slow to recognise the new order. Alternatively, disconnect from your current Wi-Fi and then reconnect to see if it automatically chooses your preferred network first. If it keeps connecting elsewhere, double-check your profile names and priorities, or consider deleting and re-adding profiles if they’re giving you trouble.

TL;DR / Final tips

  • Run Command Prompt or PowerShell as an administrator.
  • Use netsh wlan show profiles to view your saved networks.
  • Set profile priority 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 (WlanSvc) is running.
  • Restart your PC or disconnect/reconnect to apply changes.

Hopefully this helps — it took me ages to figure out how to get Windows to respect my preferred network. It’s not perfect, but way better than the default chaos. Anyway, I hope this saves someone else a weekend of trial and error.