We arrived in the morning train. This meant lines for getting on the bus, lines into the ruins, and dense crowds around the entrance to the ruins. It was the most unpleasant part of the visit.
It worked out because we took a private guide. So, during the most crowded time we had the guide showing us the ruins.
We definitively wanted to climb to Huayna Picchu. The trail closes at 1 p.m. and there is a quota of 400 people per day. At the entrance to Macchu Picchu the clerk told us that the quota was filled very early, so the trail was closed.
Luckily my wife, ever the paranoid type, decided to check at the trailhead, at 12:45. Lo and behold, we were climbers 397 and 398 of the day. It gets better: we were alone at the top -all the others had already gone down-, which is a very rare privilege in Huayna Picchu
The climb is steep, but not very long -1 hour for us- and absolutely worthwhile.
By the time we came back most tourists were gone to catch the afternoon trains. So we could visit the ruins without crowds. The ruins are not that impressive, but the views are unbelievable.
Bottom line: you can visit Macchu Picchu in one day, but it is very important to stay one night in town. Reasonable hotels are abundant in Aguas Calientes -unless you can afford the luxury hotel by the ruins. Also, if it is foggy in the morning, it may be worthwhile to stay overnight and go back the next day.
We had dinner at the Indio Feliz restaurant. Highly recommended: the food was good and the staff very friendly.

