>I would have thought that in VFP when you sql passthrough, you produce a cursor that you can then joinwith vfp tables and/or other cursors.
>
That's correct, but you can't join a VFP cursor with tables in SQL Server. SQL Server can't see the VFP cursor. To make the data visible to SQL Server, we are sending the data to a temporary table. In other words, instead of sending a list of keys with the IN() function, we are sending SQL Server the whole cursor, after which it can join with any data. Not necessarily better, just a different approach, depending on your needs.
By the way, why Access? SQL Server Express is free, or if complexity is the problem, maybe the new VS LightSwitch can help with that. I'm no .NET expert, but it seems geared to work best with SQL Server. The limitations you run into with Access may actually cause more complexity than if you used SQL Server from the start. Just a thought.