Some 200,000 revellers thronged Princes Street and the city centre to watch a spectacular fireworks display over the castle and listen to bands, including UB40 and Mansun.
First-aid posts coped with scores of incapable drunks but there were only 12 arrests, for minor breaches of the peace, and no serious casualties. City hospitals treated about 40 people, way down on the 350 casualties seen three years ago, before the party became a ticket-only event to prevent overcrowding.
The success of the occasion was a great relief to the city council, which is planning a seven-day celebration for the turn of the millennium. Hogmanay is estimated to bring pounds 30m into Edinburgh's economy, with up to 100,000 visitors drawn to the city and every hotel bed booked for miles around.
Four tons of fireworks went off in four minutes after the midnight bells while 650 police officers and 550 stewards manned a city centre cordon.
At 2.30am, council workers began a massive street cleaning operation. In 40 hours they expect to pick up 35 tons of cans, glass, plastic and sundry itemsof clothing. Revellers were ordered not to bring glass bottles into the cordon but some drinks lose their fizz if decanted into a plastic container - hence the empty champagne bottles abandoned in doorways.
Police, street cleaners and transport officials all over Britain will be hoping that the lessons learnt from this year's celebration will help with the planning of the next one.
In London, British Transport Police used the evening to count how many people used the Tube, how long crowds took to disperse and where traffic was most congested.
"Last night was seen through the eyes of next year, with a view to working out how we will do it then," a spokesman said. "It is all part of a very long planning process which has already been going on for some time."
Some 90,000 London revellers ignored police pleas to stay away and crammed into Trafalgar Square to hear the chimes of Big Ben signal the arrival of 1999. Thousands more partied elsewhere in the West End.
A total of 44 arrests were made and five people needed hospital treatment for minor injuries, but police said most people had been well behaved.
A spokesman for Scotland Yard, which put 1,500 officers on duty, said it had been a successful operation.
"Obviously we will look at how things went this year to help us plan next year's operation but we are expecting it to be extremely busy," he said.
"At the moment no one is allowed to take any annual leave over the New Year period and it is possible that we could have a total of 26,800 officers on duty, but that will not be decided until nearer the time."
In Birmingham, about 40,000 people packed into Centenary Square for the traditional party and police said the total of 16 arrests was fewer than on a normal weekend evening in the city.
The celebrations were marred by ugly incidents in some other towns. Wiltshire police were yesterday investigating the death of a 20-year-old man whose body was found slumped in a shop doorway in Warminster. A post-mortem examination was being carried out and police appealed for information from any revellers who were in the town centre in the early hours.
Greater Manchester Ambulance Service reported a spate of violent incidents including a series of stabbings.
But mobile casualty units set up in Liverpool, Warrington and Manchester as a trial for next year were declared a success. Kevin Mulcahy, of the Mersey Regional Ambulance Service, said they had treated about 30 people each. "It is not a huge number but it freed up 30 ambulances and meant people were not waiting in hospitals for hours for treatment."
One man was seriously ill after being assaulted in Weymouth, Dorset.
Over the next few weeks, police and local authorities will study the information gathered from this year's celebrations and start organising for the turn of the millennium.
But as one police spokesman said: "There will be many more people out but you have to remember it's a party and on the whole the crowds are good-natured - it's not like it's a poll tax riot."Reuse content