A request and its response is the basic element recorded in Charles.
HTTP/HTTPS consists of request-response pairs: the request from your computer to the server and the response from the server.
For generic sockets the request-response consists of the entire contents of the inbound and outbound streams. This is not always so useful for sockets and may be improved in future. If you need to do a lot of socket level debugging you may want to consider using Ethereal.
Requests appear in the Session window when they are recorded. There are two different ways of viewing the session window: structure view and sequence view.
Structure view lets you view the requests in a tree organised by the host name and then folders/directories within the host. Sequence view lets your view the requests in the sequence that they occur.
When you click on a request the Request Viewer loads in the session window to show you the details.