San Diego Fire-Rescue officials said the 35-foot boat flipped near Shelter Island shortly after 5 p.m., sending all 10 people into the water.
Harbor police pulled all 10 from the water and took them to a boat dock where some 60 firefighters and paramedics were waiting.
Two men in their 50s or 60s were declared dead at the dock and eight people, including three children, were taken to hospitals, authorities said. None of the injuries are considered serious.
Two children were released from the hospital after being treated briefly.
Rescue crews were at the boat within five minutes after it turned over and divers had searched the sunken wreckage for any additional victims.
Authorities said they are confident that everyone is accounted for.
The cause of the incident was being investigated.
The Associated Press contributed to this report.