An index for a table is very much like the index for a book. It is a separate table (hidden) that contains an entry for each key value along with the address of the record that contains it. An index is used to increase the efficiency of finding records.
A relationship is a connection between two tables. It is used to enforce referential integrity so as to prevent the creation of orphan records. It doesn't make any sense for example, to have an order detail if there is no parent order. The relationship is also used to prevent the entry of bad data. You wouldn't want to allow an invalid customerID to be added to an Order. You wouldn't be able to get paid if you didn't know who placed the order.