The CiviCRM HTML listing URL may help.
By default this displays all current and upcoming events that are active and have been set to public –
/civicrm/event/ical?reset=1&list=1&html=1
You can add parameters to this URL to filter by dates and event types –
This example will display events that start from 1st Jan 2019 -
/civicrm/event/ical?reset=1&list=1&html=1&start=20190101
This example will display events of type conference (type=1 is the ID of event type Conference)-
/civicrm/event/ical?reset=1&list=1&html=1type=1
This example will display events of type conference AND with a start date >= 1st Jan 2019 –
/civicrm/event/ical?reset=1&list=1&html=1&start=20190101&type=1
You can use the end date parameter to display past events, for example, this link will display all events that were held in 2018 -
/civicrm/event/ical?reset=1&list=1&html=1&start=20180101&end=20181231
Downsides without any development –
The title of all the pages will display as Current and Upcoming events even if you are displaying past events.
You can’t remove/add/reorder the columns.