If it will only start up in Safe Mode, then quite likely something is rotten either in your user's Library or in /Library. Using Safe Mode bypasses many things that are loaded from those locations. It also could have something to do with an attached peripheral, so disconnect everything except your keyboard and mouse, then try booting. If it works, then there ya go. If not, read on...
First thing I would try is, while in Safe Mode, use Onyx or MainMenu to run through a full series of repair and cache-cleaning utilities. Do all of them, rebooting when told to. If this fixes the problem, then yer done.
If that doesn't do it, then I would try creating a new user and making that the default user. If your new user can log in fine without requiring Safe Mode, then you have some problems with your user's Library, or perhaps Log-in Items. Follow the troubleshooting steps below. If your new user can't log in except in Safe Mode also, then you likely have some probs in /Library. That will be trickier to figure out, so let's leave that for now.
If the issue was narrowed down to the User account, try removing all the log-in items listed in the Accounts preference panel, then try rebooting. If you still can't start up without Safe Mode, then log in to a different user with Admin privileges. Rename your primary user's Library to LibraryOld. When you log back into that user, the Library will get rebuilt, but hopefully this will solve the problem once and for all.