The other day I needed a calendar for one of my projects. There are basicly 2 choices to pick from on drupal.org. There is the Full Calendar module, but this one isnt actively maintained. So if you feel like you have spare time and want to contribute to the drupal community you could go ahead and help maintain that module.
The other choice we have is Calendar. This module is still actively maintained and a lot of sites have reported using this module. So I picked this one too.
One of the benefits of this module is that it has good views intergration. It is depending on the Date module.
So when you have installed the Calendar module, you probably want to add some content to it, right?
First you need to make a contenttype with a date field. Usually this contenttype is called Event, because events are usually written into a calendar.
Ones you have the contenttype you can go to views and make a view from template. This is important, because the calendar module has picked up the date field in your newly made contenttype and provides a template view for it.
Then we go to the view to configure it. As you can see we allready have all the displays we need.
If you want change the layout or the colors you will have to go into css and/or make a new template. Name your template according to the suggestions made by views under theme > information.
Put these templates into your active theme directory. Then rescan templates in the views ui. The new template will now pop up and is bold.
Make sure you keep the variable names used in the original tpl else you will have to go into preprocessing your own variables.