On Debian Bookworm I had some trouble with this as well.
I need to mount a Synology SMB share before docker comes up fully.
I have _netdev added, but it is not being observed, apparently. I also kept getting cifs_mount "failed w/return code = -101" during mount on reboot.
While mount -a works fine as mentioned.
Error -101 means: "ENETUNREACH 101 Network is unreachable"
Odd. It should wait for network because of the _netdev option.
I finally found that enabling the systemd-networkd-wait-online service resolves it:
systemctl enable systemd-networkd-wait-online.service
Rebooted. It was finally mounted correctly.
I do not know if _netdev isn't being observed for some strange reason, or this is due to something else, but this was the observed behavior.
I have also heard that using the fstab option x-systemd.automount (instead of _netdev) will work w/o needing the service enabled above? But, I have not tested this yet.
Note:
Enabling this service will cause a reboot delay even though network seems to come up immediately. Not sure why that is either, but _netdev simply wasn't working for me on Bookworm and I have found no other explanation yet.