"We estimate the dead to be between 20 and 30 people," captain Antonello de Renzis Sonnino, spokesman for the EU's Sophia military operation to combat people smugglers in the Mediterranean, told AFP.
"A Luxembourg reconnaissance plane spotted a capsized boat around 35 nautical miles off the Libyan coast with about 100 migrants in the water or clinging to the sinking vessel," he said.
The Spanish frigate Reina Sofia and Italian coast guard raced to the scene and threw life-floats and jackets to those in the water.
"Unfortunately there were bodies too," de Renzis Sonnino said, adding that the rescue operation was still ongoing.
In photographs released by EUNAVFOR MED on Twitter, migrants could be seen waving their arms for help as they balance perilously on the deck of the boat, already underwater but clearly visible in the limpid aquamarine sea.
The shipwreck followed sharply on the heels of a disaster Wednesday when a migrant boat overturned leaving five people dead, and another sinking on Tuesday which left a baby girl orphaned after both her parents died.
A bout of good weather as summer arrives has kicked off a fresh stream of boats attempting to cross from Libya to Italy.
The survivors will be added to the list of nearly 40,000 migrants to arrive in the country's southern ports so far this year.