forwarding refers to a device sending a datagram to the next device in the path to the destination, switching refers to moving a datagram from one interface to another within a device, and routing refers to the process a layer-3 device uses to decide on what to do with a layer-3 packet.
A host sending data to another host through an ethernet interface will place a frame on the wire. If the next device is a bridge (a switch is a bridge), the bridge will inspect the frame for the source and destination MAC addresses. The bridge will use the source MAC address in its MAC address table so that it knows the host with that MAC address is connected to the interface where the frame entered the bridge. It will also try to look up the destination MAC address in its MAC address table to see to which interface it should switch the frame. If it finds the MAC address in its MAC address table, it will switch the frame to the interface indicated in its MAC address table, otherwise it will flood the frame to all other interfaces, forwarding the frame to the device(s) on the other end(s) of the interface(s) link(s).
A router receiving a frame on an interface will strip the frame from the packet. The router will then try to look up the destination IP address in its routing table. If it doesn't find a match, even a default route, it will drop the packet. If it finds one or more matches, it will switch the packet to the interface of the longest match in the routing table. The router will then prepare a new frame for the packet on the new interface (the link on new interface may or may not use MAC addresses), and the router will forward the new frame containing the original packet over the next hop interface toward its destination. The whole process a router uses is called routing, but within the router, it switches packets before forwarding them to the next hop device.