This definitely is a generic computing question. Nothing specific to System76 or Ubuntu or even Linux. This is a very general networking and file sharing question that applies to all computing devices - android, iOS, Apple, MS-Windows, Linux, Unix, VMS, TSO, VAX, ... any computer that supports networking.
If you have 2 Ubuntu systems, the easiest way to connect between them is over what network connection already exists on the LAN that the 2 systems share. If they both connect to the same router, then that's the network to use.
Next you get to choose which protocol you want or choose all the protocols. There are many. Each is different and "good" for specific types of use.
In general, the first sort of network connection that I setup is using ssh. This provides ssh, scp, sftp, at the same time. So you have a way to connect via terminal between the two systems AND 2 ways (scp/sftp) to transfer files in either direction between any systems on your LAN. Many Linux File Managers support "sftp", just use a URL that starts with sftp://192.xxx.xxx.xxx/ <--- point it at the IP or DNS or hostname.local of the other machine. You'll be prompted for a password, if you didn't setup ssh-keys already (just 2 commands) and then you'll be able to browse the files/storage anywhere on the other computer. Normal permissions apply, so most of the time, only your HOME directory on each computer will be read-write with everything else read-only.
ssh/scp/sftp are secure enough to be used over the internet too. However, they aren't designed to be used like CIFS networked storage. I have good news. There are a few other protocols that ARE designed to be used as network storage. Since you have ssh setup, you can install sshfs and remotely mount storage over an ssh-tunnel to your local machine using sshfs. There are times when this quick method is ideal.
But there is a native, faster, more stable, server-to-server method called NFS. NFS storage is a way to mount remote storage on different client machines. It is high-performance and extremely stable. It has been around for 30+ yrs and "just works". 99% of programs don't know the difference between local storage and NFS remote mounted storage.
Code:
$ dft
Filesystem Type Size Used Avail Use% Mounted on
...
istar:/d/D1 nfs4 3.5T 3.5T 28G 100% /d/D1
istar:/d/D2 nfs4 3.6T 3.6T 22G 100% /d/D2
istar:/d/D3 nfs4 3.6T 3.6T 23G 100% /d/D3
istar:/d/D6 nfs4 3.6T 3.4T 68G 99% /d/D6
istar:/d/D7 nfs4 3.6T 1.2T 2.3T 36% /d/D7
I use NFS a bunch. If I look in /d/D1, I'll see all the files and directories of the storage there and it feels like local storage on my workstation, even though it is physically installed on a computer with hostname "istar". All Unix permissions work exactly the same whether the storage is local or NFS. I can edit, create, delete, files there. Other systems can access the NFS stuff too, concurrently. Just point the file manager to the location of the NFS mounted storage and access it like it was local storage. It won't look like anything except another directory inside the file manager or in a shell or in whatever software you run (assuming it isn't a snap package). Snap packages include constraints that can prevent access to any storage that isn't in specific, approved-by-Canonical, locations. Nothing we can do about that, except to avoid Snaps.
ssh, scp, sftp, sshfs are all user-to-server connections. NFS is server-to-server, so once setup ALL users on the NFS client can use the mounted storage as their Unix file permissions allow.
So, you have some choices to make.
Bookmarks