Java networking allows connecting computing devices to share resources using sockets and protocols. Key concepts include IP addresses and port numbers to identify devices, connection-oriented protocols like TCP for reliability, and connectionless protocols like UDP for speed. The Socket class represents an endpoint for communication between applications, while the ServerSocket class allows creating a server to accept client connections. URL and URI classes handle uniform resource locators and identifiers to access resources on the internet.