I've had a freelancer create a program for me, the problem is I now want to release it to the public and need to bunch up all the files into a Setup.exe file which can place a registry key to make the program run at startup. Is there any 3rd party applications out there that can do this?
I use NSIS from Nullsoft (the same guys that write Winamp). It's free and you can get it from nsis.sourceforge.net . There's no native 'GUI' to the installer maker, but there are a number of solutions out there (all linked to from the NSIS site) that will run you through a wizard to generate the installer.
I'm a big fan of .NET's solution ClickOnce. Makes updating a breeze and can include all your "prerequisite" applications.