Laurel was explaining the other day the difference between two of the cornerstones of Islam, Zakat and Sadka. According to him, as both of them are about giving to those who need, sometimes there can be confusion about the purpose and difference.
The difference is in the purpose. Of the two, Sadka is more ad-hoc, short-term impact, while Zakat is more structured, long-term impact. One can choose the amount he would give as Sadka, and to whome. Sadka could be alms given to the poor, which would keep them fulfilled for a day, but would need them to get alms the next day as well. Zakat, on the other hand, is based on a well-defined formula. Zakat is not obligatory on every Muslim, rather, if anyone meets particular criteria, then they need to give Zakat. Also, Zakat is to be given where it would enable someone to grow, so that once given, it would enable someone to build their life. So Zakat, for example, could be to finance a child’s education.
Summarizing, Sadka is about giving someone a fish to eat, so he won’t go hungry today, while Zakat is about teaching the man to fish so he won’t ever go hungry.