Ethernet has always used packet switching.
Packet switching works by multiplexing a physical connection on a packet basis. Each packet (or frame on the data link layer) is atomic but consecutive frames can come from or go to completely different sources or destinations (MAC addresses).
The essential distinction of a packet-switched network is that each packet is forwarded on its own and in a stateless fashion (=the forwarder does not remember any previous packets and there are no 'connections' [*]).
In a circuit-switched network, a connection is set up before any data can be transferred. Bandwidth for the connection is reserved as long as it's "up". When you need to run multiple, simultaneous connections on a physical link you need some kind of multiplexing, e.g. FDM or TDM.
Note that "multiple paths from source to destination" can be true in the IP (network) layer but not on Ethernet's data link layer. An Ethernet network is essentially bridged, and multiple paths between nodes mean you've got bridge loops - without correcting measures like the spanning-tree protocol (STP), these loops will quickly take down your network.
[*] 'Connections' are a concept that may be present in a higher layer, e.g. the transport layer (L4). The network (L3) and the data link (L2) layers have no such concept with packet switching, they are connectionless.