I want to migrate my entire farm in moss 2007 to SharePoint 2010.
Will you please suggest the best way to do it ?
In-place upgrade is easier because you keep the farm configuration. The drawback is that your sites will be offline while the upgrade runs. There is also the slight risk that if something goes wrong you could be left with no site. You need to back up first, but you knew that already.
The database attach method is great when you are moving to new hardware as well as upgrading SharePoint, which will often be the case because of the requirement for 64-bit hardware. You set up a new server and migrate the databases by restoring from a backup. You have to rebuild the farm though. It is also a good solution if you want to make a fresh start without bringing "baggage" from the old farm.
Either way, before you do anything, make sure you patch MOSS 2007 to the latest version and run the stsadm -o preupgradecheck command. You will also want to do a farm survey to understand what you have, dependencies, etc. Use that in conjunction with stsadm -o enumallwebs. If you are using db attach, run the Test-SPContentDatabase PowerShell cmdlet before you do the actual attach.
Links: Big topic on TechNet