There are specialized ICs, usually going by term "Level shifter" or "voltage translator". Level shifters can be used for fast signals (low delay, fast rise time) and can be uni- or bidrectional.
Many level shifters allow enabling and disabling either side of the device, to avoid sending signals to a part of the circuit that may be powered off. The circuits can also be used to enhance the drive capability or offer better isolation and transient protection in comparison to the original device.
If the signal is of a communication bus, you might find a more suitable device by the name of repeater or signal buffer, many of such devices do not offer level shifting, but some do.
If the signal being switched is a slow, general purpose IO, you can use a resistor divider for one way level shifting or for two-way shifting a FET circuit (for slow signals), such as in this:

Image source and tutorial:
https://learn.sparkfun.com/tutorials/bi-directional-logic-level-converter-hookup-guide/all
voltage translators
andlevel shifters
. TI is heavy in this area, for example. There are also single BJT or FET arrangements that can be made to work here, as well. Discrete or IC, your choice. Also look here on this site. \$\endgroup\$