Multiple Content Types sharing a lot of common fields I wanna have three types of Events on my website. All three types of events have common fields such as: name, date, location, time, host, price.. and many more.

Now each event type has few extra fields that do not apply to other events types.

It is very important requirement in UI administration form not to show fields that do not apply to a specific event type.

I was considering the idea of creating 3 separate Content types (one for each Event type), but somehow I feel this is not the best way to go since there is a lot of common elements.

Any suggestions?
If the content types share the majority of fields, it makes sense to keep them as a single content type.

I'd suggest adding a field for "Event type" or similar to record what sub-type of Event the content is and perhaps group the additional fields in fieldsets.

You can then show/hide the additional relevant fields with hook_field_attach_form (or equivalent) by setting '#access' => FALSE on the relevant field.

If you don't mind showing the fields to the user, you could also use a module like conditional_fields (D7 dev works ok)