Does Left Join take significantly longer?

I performed some tests on a single table I was querying using typical query
criteria (same criteria each time).  There were 116K records in the table.
My times were on the order of 1 second or less to return 1298 records on the
first and subsequent queries (the first was always the slowest).

Later, I decided to make it relational because some of the records (about
half) would sometimes have two additional fields' worth of data.  Now, when
performing a Left join on an indexed field in both tables, my times are in
the 5 to 6 seconds range.  Am I doing anything wrong or is this normal? I
always imagined that joins were optimized by the engine and were fast but
obviously not as fast as querying a single table but I did not expect this
to be 5 or 6 times slower.  Or, is this because I am keeping both matching
and non-matching records ? e.g. left join

I am still performing the same query which will return 1298 records of 116k.
The field the join is performed on is indexed in both tables.  I have tried
opening the tables, specifying the correct index tag name, before performing
the query (I am doing everything programmatically) but have also tried it
manually and am getting similar results.  I am running and will run
everything local (no server).

Here is my SQL code:

SELECT DISTINCT
     XY.*,
     BCNALT.M3A,
     BCNALT.MC
FROM "TEST.DBF" XY LEFT JOIN "TEST2.DBF" BCNALT ON XY.OFFSET = BCNALT.OFFSET
WHERE XY.XCOORD    BETWEEN 800 AND 1100
      AND XY.YCOORD   BETWEEN 800 AND 1100
      AND XY.SCAN        BETWEEN   1   AND 250
      AND XY.SITE = '1'

The M3A are MC fields are the new fields in the 2nd table.