Interface speed and bandwidth
speed command will change the actual operational bandwidth of the interface. For Ethernet interfaces, the only options you have for speed are 10 Mbps, 100 Mbps, 1000 Mbps, and for interfaces capable of higher speeds, you may also have 10Gbps, 25Gbps, 40Gbps, 100Gbps, and so on. So the
speed command will only allow you to configure specific speeds, those that the interface is capable of operating at.
bandwidth command is different. Changing this value will not affect the actual bandwidth of the interface. It actually acts as a label on the interface and is used to determine the cost and metric of routes when using routing protocols such as EIGRP or OSPF. You are able to configure any bandwidth value with the given range of the command. This value should only be changed if you want to influence routing performed by a routing protocol, in some manner.