Authorities say the incident started with a dispute on the dance floor of the Hudson Terrace Club on West 46th Street off 11th Avenue.
At about 3:15 a.m., a car pulled up with a group of men who jumped out and stabbed the victims as they were leaving the club.
All three were stabbed in the torso. One man was taken to St. Luke's Hospital, where he is in critical condition.
Two other victims are in stable condition at Bellevue Hospital.