I would recommend setting up a base 'Event' class which includes an Object Relation List datatype. This will allow your editors to choose any fields they need for the event they are adding. Then you can set up your template to display any fields associated with that specific event. Having 40+ fields in your class can slow the system down a bit (I know this from experience), so I would avoid that choice if at all possible.
Alex Come join the IRC channel: #eZpublish
Alex
[ bald_technologist on the IRC channel (irc.freenode.net): #eZpublish ]