It happened about 300 yards off Juno Beach Saturday evening.
The U.S. Coast Guard sent a search and rescue crew from Lake Worth.
Palm Beach County Fire Rescue, Sea Tow, and the Palm Beach County Sheriff’s Office also responded.
The Good Samaritan arrived at the burning boat before the Coast Guard and was able to rescue all 19 people.
None of them was injured.
The Coast Guard told CBS12 the fire came from the engine room, but the agency is still working to determine exactly what sparked the flames.