Not entirely a technical concern, however here I’ll quickly share some notes on public and resource calendars.
1) Resource Calendar – events can’t be added directly, instead events are added through adding the resource to events occurring on User or Public Calendars (select Resources in the search within list). A typical use case for resource calendars would be room bookings, where the room is the resource. Other use cases could be shared equipment, overhead projector (10 years ago maybe) etc..
2) Public Calendar – group calendar unrelated to individual user calendars – events can be added directly. A typical use case for public calendars would be team vacation calendar, or basically any scenario where a group of users share an interest.
3) User Calendar – Standard users and partner portal users have their own calendar. Access to a user’s calendar can be role hierarchy based and via Calendar sharing rules.
4) Limits. There are no explicit limits on the number of public or resource calendars you can have in an org.
5) API. Events can’t be added or modified via the API. Instead a proxy object could be used with Apex triggers to broker changes via Apex code.