Capturing will take packets from a network adapter, and save them to a file on your harddisk.
To hide all the lowlevel machine dependant details from Ethereal, the libpcap/WinPcap (see Section 3.9, “libpcap/WinPcap (optional)”) library is used. This library provides a general purpose interface to capture packets from a lot of different network interface types (Ethernet, Token Ring, ...).