One of the most tricky tasks to select the type of development task you will work to integrate your custom application with sharePoint portal as all know that you can work with sharepoint 2007 data either through SharePoint Services or SharePoint APIs.
You can use SharePoint Web Serivces in case your code is not resides on sharepoint server,and you would like to manipulate sharepoint data in oyur application.
In case your code resides on sharepoint server,you can use directly the sharepoint APIs to manipulate sharepoint data in an easy way.
Big enhancements have been done on Sharepoint services,you can manipulate all sharepoint compoenets by consumping sharepoint services such as : users,groups,permissions,meetings,BDC,Workflows,webparts pages,documents,lists…etc.
I recommend using Shapoint API in case your code resides on the sharepoint server than using the sharepoint web services because its OOP Object model and gives you little bit more features in some sharepoint classes than provided on the web services.
and the last decision is to you…..
Hope this helps.