Earliest way to disable wifi at login or boot I'm running Catalina, and the OS will always turn wifi on at boot. I've been looking into methods to turn wifi power off when I login, and I've created a .plist:

&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt;
&lt;plist version="1.0"&gt;
&lt;dict&gt;
  &lt;key&gt;Label&lt;/key&gt;
  &lt;string&gt;com.username.wifi_off&lt;/string&gt;
  &lt;key&gt;ProgramArguments&lt;/key&gt;
  &lt;array&gt;
    &lt;string&gt;/Users/username/.wifi_off.sh&lt;/string&gt;
  &lt;/array&gt;
  &lt;key&gt;Nice&lt;/key&gt;
  &lt;integer&gt;1&lt;/integer&gt;
  &lt;key&gt;RunAtLoad&lt;/key&gt;
  &lt;true/&gt;
  &lt;key&gt;StandardErrorPath&lt;/key&gt;
  &lt;string&gt;/tmp/wifi_off.err&lt;/string&gt;
  &lt;key&gt;StandardOutPath&lt;/key&gt;
  &lt;string&gt;/tmp/wifi_off.out&lt;/string&gt;
&lt;/dict&gt;
&lt;/plist&gt;


which is placed in ~/Library/LaunchAgents, and the file .wifi_off.sh is:

#!/bin/sh
networksetup -setairportpower en0 off


Is this quickest and/or most efficient way to disable wifi at login? How can this be extended to disable wifi at boot, so that wifi is disconnected at the login screen, before anyone has logged in?
You may be asking two different things, but in the last paragraph you said: 


  The ultimate goal is to prevent the system from automatically logging into a network


Prevent System From Automatically Logging Into a Network:

I think the way to accomplish that is to un-check (disable) the Auto-Join feature for each WiFi network name/SSID that's stored. System Preferences, Network, Advanced.... Uncheck all checked boxes in the "Preferred Networks" list. 

Also note that there are a couple of other options here that may be of interest: 


You can uncheck the option to "Remember networks this computer has joined" 
You can check the box to "Require administrator authorization to: Turn Wi-Fi on or off. 


To Disconnect WiFi Power at Boot Time:

To disconnect wifi power at boot time, you can use cron. It's certainly simpler than building a .plist, and it's invoked at boot instead of login. In my testing, it survives a login, but of course it could be "overruled" by other system settings -- YMMV. It can be re-started from the WiFi icon in the menu bar after login when you wish. Here's how to do this from the CLI: 

crontab -e 


This will start your designated crontab editor, and open your current crontab. If you don't have a crontab (haven't used it previously), you'll be prompted to select from one of three choices for default editor. I'd suggest you choose pico or nano. That done, the default crontab will be opened in the editor of your choice.

Once the editor has started, make the following entry on the first empty line at the "bottom" the file: 

@reboot /usr/sbin/networksetup -setairportpower en0 off


Save and exit the editor, and your new crontab becomes active. This command will now execute aach time your system boots, and (subject to the exception mentioned) your WiFi interface will be "OFF" until you turn it on.