Other than the obvious..
What's happening behind the scenes when you log off? Why is it necessary to restart the computer for certain configurations to take effect?
When you log off, it will close all processes and services linked to your profile, while others will remain alive. When you log back in, it restarts everything linked to your profile.
However, as implied, there are services which are running without a logged user (like for example some remote desktop servers), and these ones will remain active, and won't be restarted from log off, log back in.
Also, most things linked to hardware are initialized before log in, and they won't be changed unless you restart the computer. (Take this with caution, I'm very foggy on details, of course some hardware-related things can be changed while a session is opened). However, log off will most likely have no effect on this, for the reasons explained.
Log off keeps all system and internal processes active (Anti Virus, System level stuff etc.)
Restart puts all services in to a stop state one by one.
For example, it is not possible to do certain updates when the system is running as the item it is trying to patch may be in use. When you restart, all services stop and any dependencies also stop so that you can patch things that you may not of been able to whilst the system was running.
Also, lets say you have a bad leaking memory driver that did 1Mb every hour. logging off would not stop it (unless running at user-level) simply because it is always being run. When you restart the computer, it actually restarts this service and you get your memory back.
Of the current answers, the ones about system-level services and hardware the ones that are most pertinent to your question. If you feel your question was answered, please Accept one of those. :)
I guess from your question that you're asking in relation to installing new software which tells you to reboot (or as you asked, "for certain configurations to take effect")
One small utility I've used in the past is WhyReboot by Exodus Software. It queries the registries list of PendingFileOperations which typically includes deleting temporary setup files, or renaming temp files to their final destination (because that final destination is currently in use).
Many (most?) installers are written in a lazy fashion. Very often an installer will tell you that you must reboot even though it's not necessary. It's just 'easier' for the developer to push that responsibility on the user, rather than manually determining which services should be stopped so that in-use files can be swapped out for their newer version (for example).
So, barring any services that actually need to be restarted (or any hardware that needs to be reinitialized, which is obviously less common), the utility allows you to scan the list and see what file operations are pending, and you can decide for yourself if you want to go with a full restart, or if you simply want to restart any services you know are affected.
Ultimately, the failsafe decision is to just reboot. But maybe you have something running that shouldn't be stopped. Or perhaps your machine takes a long time to reboot, and it's worth a quick check to see if you think it's really necessary.
I won't bother to quote the product's entire text, but it explains the entire rationale behind the tool. It's worth a read, if you're interest is piqued at all.
One of the key differences are that many of the Windows Services are not impacted by logon/logoff events - they start before you even logon and are often the last executables to stop running during a reboot.