In the United States, the elections were on 6 November 2012, but inauguration only on 20 January 2013, more than two months later. In France, the presidential elections were on 22 April, and the inauguration about ten days later, in Russia circa 30 days. Why is this period so long in the U.S.?
The original inauguration date was March 4th (prior to 1937 and the 20th Amendment). This was a necessity before the invention of the telephone, telegraph and automobile when it took quite a bit of time to get the word out about the election results (especially to the far flung states) and even longer to get the winners of those elections back to Washington D.C.
Once modern technology made it possible to solve these logistical problems, the 20th Amendment moved the date much closer to election day, January 20th. The reason it is not even closer to election day is the same reason it was originally in March, logistics. It takes quite a long time for President Elects to hire their staff (this is the biggest management job there is after all), get their Secret Service detail setup, begin to get necessary security briefings, learn the nuclear launch codes and procedures, etc.
For this reason, BOTH candidates begin a "transition" process long before the election is even over. This article does a nice job of highlighting the oddity that the Mitt Romney "transition" website is still available on the web. Indeed, the "Readiness Project" as the Romney team called it cost the federal government $8.9 million in order to enable him to actually take office by January 20th, in case he actually won. For this reason, January 20th is a lot closer to election day than it might appear.
One argument in favour of not making this period any shorter is the sheer number of posts that is appointed by an incoming president.
At the other end of the spectrum, in the UK, most of the civil service is made up of permanent, politically neutral, employees, who remain in their posts even when there is change in the governing party.
As a result, the number of political appointees, who essentially form the entirety of the Government, is currently just 121 - and in fact, the number of paid ministerial posts is currently limited by law to only 109.
In addition, when there is a change of governing party, the appointment of a new cabinet may be smoothed by the fact that, when in opposition, that party would have had a Shadow Cabinet, with one member "shadowing" his or her counterpoint in the government. Hence it's not unusual for that person to be given the job they were formally shadowing.
As a result of all this, the lame duck period can be very short indeed. In the 1997 general election, the polls closed at 10pm; John Major resigned around midday the following day, and Tony Blair was appointed Prime Minister less than an hour later.
Technically, the reason for January 20th is that the date is explicitly specified in Twentieth Amendment to the United States Constitution.
The exact reason for January 20th is never stated, but given American Constitutional system is fairly clear:
Congress should be in session BEFORE that, since in the event of a tie, Congress gets to choose the President. One of the main points of 20th Amendment was to prevent a lame-duck congress from choosing, instead of the newly elected one, such as repeat of the 1876 election. Quoting from Senate Judiciary Committee:
This notion struck the Senate judiciary committee investigating that possibility as just wrong. "It is quite apparent that such a power ought not to exist, and that the people having expressed themselves at the ballot box should through the Representatives then selected, be able to select the President for the ensuing term…"
Therefore, you really only have 17 days before Inauguration and start of Congressional Session - not THAT long of a time.
A separate question is why the lame-duck Congressional session is so long (~2 months), but that was back in the day when Congress didn't meet as much.