In 2000i, SEEK (transactional access) is always faster for individual record lookups.
Note that if you are using client/server access to a remote DB, a SQL call through the ADO driver will frequently be **significantly** slower than the same call through the ODBC driver when doing JOINs, if you have any filtering on the recordset (e.g. WHERE Table1.X = 1 AND table2.Y = 'bob'). This is because the 2000i ADO driver performs the SQL level filtering on the client, not the server. Thus, a huge chunk of records may be passed to the client for filtering. This is not an issue with the Version 8 ADO driver.