Computer networks require both hardware and software components. The hardware includes servers to manage resources, clients to access resources, transmission media like cables to transfer data, and connecting devices like hubs and switches. The software includes network operating systems installed on servers to facilitate sharing, and protocol suites like TCP/IP that allow devices to communicate over the network.