Two people suffered minor injuries and were taken to a hospital for treatment, said Patrick Foye, of the Port Authority, which operates the airport.
The chutes aboard the MD88 aircraft did not deploy, leaving passengers to scramble out over the wing.
The New York City Fire Department initially said 24 people received non-life-threatening injuries and that three were transported for further evaluation. Port Authorities dispatchers earlier said two people suffered minor back injuries and one had a minor neck injury.
All of the passengers and the crew of five were quickly taken by bus to a nearby Delta terminal as emergency vehicles raced onto the runway.
Foye did not address the possible cause of the incident, which occurred during a steady snowfall from a winter storm blanketing the East. He said the plane landed normally on 7,000-foot runaway No. 13 but after traveling about 4,500 feet suddenly veered to the left, sped onto snow-covered ground and rammed through a fence, the plane's nose stopping just at the edge of the bay.
"If we wouldn't have hit the snowbank, we'd be in the water right now," said Charles Runels, a passenger from Atlanta, the Associated Press reported.
Sam Stern, another passenger, told CNN that as the plane skidded off the runway for what seemed like nearly a minute "it was eerily silent....no noise, total silence.".
Because he was sitting next to the emergency exit, Stern opened the door and jumped onto the wing."There were people on the ground to greet us." he said. The passengers then came out single file and slid off the wing to the ground.
"I'm still in shock," he told CNN. "It's starting to hit me. It was a frightening experience."
One purported passenger, identified on Twitter only as Steve, tweeted that photos showing the plane resting on an embankment don't tell the full story. "The pics are deceptive," he wrote. "That is side of runway. We were going in water until hit the hill and spun"
Jaime Primak, star of Bravo's Jersey Belle, was aboard the flight. She quickly tweeted: "We just crash landed at LGA. I'm terrified. Please..."
"We have all been evacuated," she added a few minutes later. "Everyone is safe. Thank you for your prayers. God is good."
The plane did not reach the water, but did suffer a minor fuel spill, which was quickly contained.
Foye said the runaway had been plowed only minutes before and that two pilots arriving just ahead of the Delta flight "reported good braking action."
According to the National Weather Service, visibility at the airport was one-quarter mile and northerly winds were blowing at about 9 mph at 10:51 a.m., shortly before the plane landed.
The incident occurred at around 11:05 a.m. and forced a halt to all traffic in and out of the critical New York hub. Planes were diverted to Newark and other area airports.
Foye said at least one runway at LaGuardia was expected to reopen at mid-afternoon.
.In July 2013, the front landing gear of a Southwest Airlines flight collapsed while touching down, sending the aircraft skidding before it came to a halt, the Associated Press reports. Ten passengers received minor injuries.
The last deadly crash at LaGuardia occurred March 23, 1992, when a US Airways jet carrying 51 people crashed while trying to take off in a snowstorm, according to the AP. The plane skidded part way into the Flushing Bay and 27 people died.