Structuring the client-server boundary in Roblox - RemoteEvents, RemoteFunctions, UnreliableRemoteEvents and BindableEvents, what replicates automatically and what does not, request-response patterns, ownership of state, and network ownership of parts. Use when designing any feature where the client and server must both participate, when replication behaves unexpectedly, or when deciding which side computes a result.