By default WordPress ‘scans’ your (parent & child) theme files looking for template files. Then when it’s displaying content to the end user, it chooses the most appropriate template file (via its template hierarchy), with child templates taking precedence over parent templates.
Event Organiser adds in another layer. If the content is relating to events (events page, single event page, venue page, event category page etc), and an event template has not been selected, then the plug-in selects the appropriate default template from its templates directory. To use your own templates, then, you simply need to add your own event templates to your parent/child theme. See this page for details.
This is great because you have complete control over how the event pages look without having to make changes to the plug-in itself (all changes are lost when you update).
But what if I update my theme?
Good question. If you you plan to update your theme – your custom templates will be lost. So what then? In this situation you should create a child theme (see links at the bottom for more tutorials), and store the templates there. This the purpose of child themes – they allow you to make alterations to a theme (the parent theme) without actually touching the parent theme (again because changes are lost when you update).
But what if I want to update by Child theme?
Very good question. A few WordPress developers have said in this case “you’re doing it wrong” – and the idea of ‘grand-child’ themes has been roundly dismissed. I have mixed feelings about this, but in any case, it is possible to store your custom templates anywhere – it just requires a bit of code.