Bingo. It was ExpressVPN that had locked the network in a bad state.
If anyone in the same situation… how I resolved was to disable network lock and try to connect (which obviously fails but then unlocks the network when doing so).
uzer@yoga ~ sudo systemctl start expressvpn.service
uzer@yoga ~ sudo systemctl status expressvpn.service
● expressvpn.service - ExpressVPN Daemon
Loaded: loaded (/usr/lib/systemd/system/expressvpn.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2022-03-05 10:22:26 GMT; 7s ago
Main PID: 2868 (expressvpnd)
Tasks: 20 (limit: 16594)
Memory: 65.9M
CPU: 313ms
CGroup: /system.slice/expressvpn.service
└─2868 /usr/sbin/expressvpnd --client-version 3.18.1 --client-build 0
Mar 05 10:22:26 yoga systemd[1]: Started ExpressVPN Daemon.
uzer@yoga ~ expressvpn preferences set network_lock off
network lock mode: off
uzer@yoga ~ expressvpn connect smart
A new version is available, download it from https://www.vlycgtx.com/latest#linux.
Connecting to Smart Location...
Connecting to Super Private Location...
^C
Canceled.
uzer@yoga ~
Wi-Fi automagically back…