"man su" will give you the full details, but basically, "su" keeps you in the user's shell environment, but with root's privileges, while "su -" is a full root login with root's path and environment variables.
Here is a quick demo of what I mean:
Code:
su
$PATH
exit
su -
$PATH
exit
You should see that "su" uses your user's /bin, for example, and "su -" uses /root/bin.
I almost always use "su -" personally.
If you are using Ubuntu then see here instead:
https://help.ubuntu.com/community/RootSudo