The 54-year-old guard, Gregory J. Boyle, was shot in the chest but was expected to survive, and a suspect was arrested on charges including attempted murder and assault.
Hotel guest Christine Cataldo said she was looking at a display of engagement rings near the entrance to the store, Cellini Jewelers, when she heard the first shot.
"It sounded like a bomb. One big boom. And then people started running," said Cataldo, of Long Island. "I looked up, and I saw a man in a suit with silver hair grabbing another guy."
The mayhem began when the black-garbed suspect, identified as Rafael Rabinovich-Ardans, 20, pulled out a gun in the jewelry store and used the weapon to smash two display cases full of expensive rings and necklaces, said a police official who spoke on condition of anonymity because detectives were still investigating.
"I heard some pops, [then] people screamed, 'Gunshots, robbery, get out,' and we ran," hotel guest Matt Luba told CBS station WCBS-TV.
Boyle, a retired New York Police Department detective, confronted the man. About three gunshots rang out as the two wrestled and fell to the floor, though it wasn't clear who fired, the official said. Both were armed.
One bullet hit Boyle in the upper chest, the official said.
Another hotel employee then tackled the suspect, the police official said. The suspect's gun went off again as they grappled, but that bullet apparently struck no one. Hotel security staffers arrived and took Rabinovich-Ardans into custody.
No telephone number could be found for Rabinovich-Ardans, of Queens, and police did not know whether he had a lawyer. It was unclear whether he had any previous connection to the jewelry store, they said.
Witness Jeff Johnston of Raleigh, North Carolina, said he was near the store when chaos broke out.
"All of a sudden people were running and hiding behind hotel furniture," he said.
Boyle was in stable condition late Saturday at Bellevue Hospital, police said.
The suspect was not identified. A telephone message left with the hotel was not immediately returned.
"We felt really safe and we've been talking to people who've assured us this city is safe," Melanie Truman, a guest visiting from the UK, said. "Then we come back and find this."
The Waldorf-Astoria was the world's largest hotel when it opened in its current Park Avenue spot in 1931, according to the hotel's Web site. It was previously on Fifth Avenue.
The Art Deco hotel quickly became synonymous with luxury and part of popular culture, appearing in the 1945 Ginger Rogers film "Weekend at the Waldorf" and garnering a mention in the classic Cole Porter song "You're the Top."
Cellini Jewelers, a high-end boutique that specializes in luxury watches adorned with diamonds and gold, opened in the hotel lobby in 1977.
No one answered the phone at the store Saturday. A saleswoman at Cellini's sister store in Manhattan said she hadn't heard from the managers at the location where the shooting took place and had no additional information.