Most calendar plugins will target creating a calendar display, rather than the table display you have shown here. The My Calendar Plugin could work (https://wordpress.org/plugins/my-calendar/), but you’d still need some custom development to get everything you want.
For something like simple and straightforward like this, you might be better off with a post category (e.g. tax_calendars) and then create a custom loop for that category in your (child) theme.
As for you last requirement, you’d need some custom javascript (http://keith-wood.name/icalendar.html) that would allow visitors to download a calendar event.