Can I use WebAuthn to log in to a remote system via ssh? Or am I still going to need to remember a password?
Not quite exactly like that, but there are similar things.
WebAuthn is a web-specific JavaScript API that allows web pages to interact with hardware authenticator devices. That includes both FIDO2 "roaming authenticators" such as YubiKeys, and built-in "platform authenticators" like TouchID and Windows Hello. FIDO2 devices are accessed via a standard protocol called CTAP, and platform authenticators have platform-specific APIs, but WebAuthn hides those details, so a page can use whatever type(s) of authenticator the browser knows how to talk to.
Recent versions of OpenSSH also support FIDO2 roaming authenticators, so you can use e.g. a YubiKey to log into a remote account. (This doesn't involve WebAuthn; it uses CTAP directly, just like a browser does as the basis for WebAuthn.) However, it requires support on both the client and the server (since it's a new kind of SSH key, which the server must understand), so it won't work with older servers. Also, the build of OpenSSH currently shipped in macOS has it disabled, and it might not work in Windows either (I'm not sure).
Platform authenticators like TouchID and Windows Hello do not use the FIDO2 CTAP protocol, and I don't think OpenSSH currently supports them. It would be possible, but someone would have to write code specifically to support TouchID, specifically to support Windows Hello, and so on.
There's an unofficial OpenSSH plugin for Windows Hello. There's also an unofficial tool for using TouchID with OpenSSH. The former is a plugin for OpenSSH's security-key support; the latter is an SSH agent that's backed by the macOS keychain.
OpenSSH can also use keys stored in PKCS#11 devices: smartcards (in smartcard readers) and some devices which emulate smartcards (such as YubiKeys). This is more compatible than the FIDO2 option (doesn't require any special support on the server side, and should work on a Mac), but also more complicated to set up.
BTW, when you say "remember a password", I'm assuming you mean the password for your local SSH private key, not the password for the remote account you're logging into. If you're typing remote passwords, you should switch to SSH keys right away, and preferably disable password logins entirely on the remote server ("PasswordAuthentication no" in sshd.conf) to prevent password-guessing attacks. If you have an SSH agent running (this is automatic on macOS and most Linux desktops; don't know about Windows), you'll only have to type the key's passphrase once per login session, which is better than typing remote passwords every time. Then you can start thinking about FIDO2/PKCS#11/etc. to store the key in a hardware token instead of a plain file.