You can certainly use a portal instead of 5 different TO's. That seems much more efficient and flexible. Portals can be used for data display only, you can use behavior settings for each field in the portal to prevent entry while in file mode and you can use a relationship that doesn't allow creation of related records if you want to make this a read only portal.
I want to select the contacts from a drop down list based on the Contacts table.
That can certainly be done, whether you have 5 TO's or just one. I think you want to select up to 5 different contacts to associate with a given invoice record. Is that correct?
If so, you can use a join table and link any number of contacts with any number of invoices.
Invoices::InvoiceID = Invoice_Contact::InvoiceID
Contacts::ContactID = Invoice_Contact::ContactID
You'd use a portal to invoice_contact to create new records in this table, with a drop down of contact IDs to link each new Invoice_Contact record to a specific contact record.
I see now I was trying to create a "many-to-many" relationship, I should have realized I needed a join table (and that a portal doesn't obviate relationship structures but, of course, is defined by them).
Thank you, PhilModJunk!