Generally, turning the power off for a few minutes allows all the capacitors etc. keeping the memory/cache in a dynamic state to discharge and, therefore, reset. Restarting doesn't allow this but does allow the software to reload and start again.
While both power off and restart can give your device a fresh start, there are some differences between the two.
When you power off your Android device completely, it goes through a full shutdown process, and all processes and apps are closed. This means that when you turn it back on, it has to go through a complete boot process, which can take longer than a simple restart. Also, powering off your device completely allows the internal components to reset, which can help to clear any memory or performance issues that might be happening.
On the other hand, a restart will only close and reopen all running apps and processes, which can free up some memory and clear any minor glitches. This can be faster than a full power off and on, but it won't give as complete a fresh start as powering off.
So, to answer your question, powering off your device is more effective at giving it a fresh start than a simple restart. However, restarting regularly can still be beneficial in keeping your device running smoothly.