How to build a field list in a node? I have two content types: 'artist' and 'venue'. 

When an artist node is viewed, it needs to display a list of venues and dates. Venue name will link to the venue node eg:

Artist
-------------------- 
Venue1 | 1-Jan 20:00
Venue2 | 2-Jan 17:00
Venue3 | 4-Jan 20:00


The possible solutions are: 


Create a 'performance' content type that links (using the References module) to artist and venue, and has a date field. Then attach the list using Views. This seems like a lot of extra work for the editor.
Add two unlimited value fields to artist node: reference to venue and date field. It is difficult to keep them in sync and clunky.
Would this be a good use of the entity API? I don't know enough about entities yet, but have a feeling that would be overkill for something so simple?
Are you looking for Field Collection?
You can create collection with Node Reference field and Date field. Then Field Collection Table will help you with outputting.
This exactly works with Entity API.