Which remote printing protocol to use?
The preferred protocol is Raw. Every printer understands it, as does every Windows PC. LPR/LPD would be my next favourite. It does date back to the old Berkeley Unix days, but it works very reliably. It uses a "queue name" that can be printer-specific with older printers. Newer printers usually don't care what name you use. I would only use IPP if there is no other way of getting to the printer. WSD will only work with the latest printers.
All protocols allow any number of users to print simultaneously - even if they use different protocols. The printer accepts the jobs on a first-come-first-served basis.
I've never worried about security on printers. What is any hacker going to do to it? Yes it's possible to cancel jobs or change printer settings, but that is not a major hassle. If you're worried about security, protocols like telnet or http should be higher on your list.
LPD is much more stable for me in cases with printing errors than raw because LPD seems to pass printer status much reliably (or at all). I configure LPD (port 515) whenever possible, followed by Jetdirect (9100).