Simple answer.
Non-profit doesn't aim to make any money, they usually are started for a cause and live on donations. Because of that, they may be regulated under charity and have different requirements in some countries. Think NGOs and some charities in your area.
Social enterprise on the other hand, can also be started for a cause, run like a "normal" business, using business models and strategies to get to financial or operational sustainability. Typically, their primary goal is to make a difference in their cause, thus creating a positive impact to the society. They aim to make profit so as to achieve sustainability, but the goal of social impact is higher ranked than profit.
In my humble opinion, all enterprises should be social because all of us should aim to create positive impact to the society.
A Social Enterprise is a business with social objectives. Social enterprises don’t necessarily need to have profit maximization motives, but they are able to legally make profit, unlike non-profit organizations. A social enterprise attempts, through its business, to address a social problem or a challenge. Social enterprises mainly take the form of either a non-profit or for-profit and are sometimes registered as a social business or charity.
Non-Profit Companies are defined according to the Law by Decree No for the year 2008 amending the applicable Companies Law and Ministerial Order No for the year of 2010 regarding the regulation of Non-Profit Companies as: Any company that is registered as a Private limited company and does not aim at profit-making and follows in its registration the procedures came under the law.
Besides if you do have any questions give me a call: https://clarity.fm/joy-brotonath