By the 20th Amendment to the U.S. Constitution, Inauguration Day is always on January 20, unless the 20th falls on a Sunday, in which case the president is sworn in privately and the big public to-do is put off until the next day. However, the presidential inauguration wasn't always on January 20. Before 1936 new presidents were sworn in on March 4.
The date changed for a few reasons, but the main one was so that the new president could get down to business sooner, and the old president, the “lame duck” president, would have less chance of having to deal with any emergencies that popped up between election day and inauguration day. Congress also used to start the new session on March 4, and it changed to January 3 (a little less than three weeks before the president starts work) for essentially the same reason.
The months-long transition time between presidents is necessary in order to allow the incoming president to select his cabinet and make many other decisions, as well as allow the outgoing president time to wrap up his affairs and help the switch go smoother.
However, the transition gap also leaves the country vulnerable. There is a question of whom to answer to at all levels in a crisis. Who's in charge? Who's making decisions? The old team or the new team? When should the outgoing president make important decisions that will have lasting effects? Should he wait a few weeks or days until the next president comes in and let him or her handle it? There are no simple answers. It depends on the circumstances in each case.
A good example is the War Between the States. Abraham Lincoln was elected in November 1860. Outgoing president James Buchanan took a “let the next guy deal with it” attitude, and by the time Lincoln was finally sworn in on March 4, seven of the Southern states had already seceded from the Union. He was left with a bit of a mess, to say the least.
Fast forward to the early 1930s. The country was in another mess hence known as the Great Depression. It was obvious that any new president, with the new Congress, needed to be able to take measures as soon as possible to address any crises that might come up in the future. By the time Franklin D. Roosevelt was elected president in November 1932 the 20th Amendment to the US Constitution – changing the start of the term of office for president to January 20 and for members of Congress to January 3 – had already passed Congress and was making the rounds among the states for ratification. Missouri (hurrah for my native state) became the 36th state to ratify, thus meeting the three-fourths requirement, on January 23, 1933. However, because the sections of the new amendment pertaining to the president, vice-president, and Congress weren't scheduled to take effect until October, Roosevelt was still sworn in on March 4 that year.
The first “January 20th” Inauguration Day was 1936, when Roosevelt started his second of four terms (though he died in the last one). Since then, 13 different presidents have been sworn in on January 20.