The government does provide and should provide a basic safety net for people who have hard times. However, it wastes a lot of the money that could be going to people. A charity is in the business of helping and a well run one can be very helpful in assisting people.
The government is so big and wide reaching that it is often very difficult for them to be responsive to the needs of its people. Charity efforts can mobilize quicker, often have better access to resources that they don't have to fight over, and can better target populations in need.
Charities may be able to help groups more specifically than the government, and possibly even in bigger ways, but the biggest reason that a charity is successful is that the government is structured to support charities. There are regulations that protect nonprofit organizations, as well as economic regulations that redirect corporate funding toward charities as a tax write-off, providing charities with substantial funds.
I do not believe charities are more effective in helping people than the government. As a person who needs assistance and receives it through the government, I have not interest in doing what I refer to as begging, by asking for help from charities. I find that activity degrading, but it is the only way to get help from charities.
I don't think charities are better at helping people than the government is. I think charities do a lot of good for people and do help people but would not exist without the help and protection of the government. So in a way the government is partially behind charities so it is unfair to say charities are better.
I do not believe that charities are more helpful in helping the people than the government. I think that while charities do a good job of helping some people who face certain problems, overall the government still does more to help the people. More issues and problems are resolved by the government.