This is one of those 'it depends' questions.
You have several options. If you just want the sharepoint setup, templates, master pages, etc, but not the content, then make a solution. Installation is quick and easy and you have massive control over everything. Downside is that it takes a bit more time to develop a solution, and although tools like wspbuilder and stsdev can ease the burden, it can still be difficult, especially if you already have an environment that you want to replicate in a solution. Also, content migration is tedious, but you can get some help using the content deployment API. There is also a wizard available from codeplex that will help you with the content migration.
Another option is to use backup/restore. Problem is, it doesn't work on a site level, only on site collection, meaning that to get just one site of several this is not an option. Good thing is that you preserve all intra-sitecollection links which will be a problem in any solution that relies on separate sites.
Third option is to save the site as a template. Go to site settings, save site as template, and upload it to the production site. If you like yo ucan also include the content. You still need to manually deploy any custom components or dlls you may need, but it gets you a long way. Even better, the stp-file you get is also just a cab file that you can use to extract the manifest files for use in you own solution. Download it, rename to something.cab and open it. Combine this with the first option and you can come a very long way and still maintain control.
.b
http://furuknap.blogspot.com/My SharePoint blog with articles, reviews, and code samples. Anonymized questions and answers may be posted to my blog.
http://www.understandingsharepoint.com/userexperience/Blog for my new developer book on the SharePoint User Experience
If, after a few days, I have not responded to a thread in which you have requested my assistance, please let me know by email furuknap<[at]>gmail.com. I am not ignoring you but I do get 20-30 requests each day and some responses might be lost.