Communism and Socialism do not work because their basic premise invloves moral inequality. You appear to agree that everyone should be treated equally, yet you advocate taking from one person and giving it to another, and claiming it is your right. This means that you are actually saying that those who are poor are morally more important than those who are not poor.
It works on the same premise as banking. You give equally to everyone in terms of education and health, investing in their futures. Some have an awesome future, some don't. Those who don't work low wage jobs, those who are awesome will have high paying jobs. You then tax the high paying one 50% of his income and the poor one 0% of his.
Does it sound fair? Not directly. Then you calculate how much money the rich person saved by having a free education and not paying off student loans (+ interest). He's also less likely to be accosted by muggers and homeless people because the poor ones get enough money to live.
People are not treated equally. Even after taxes, the awesome guy will make much more money, own a bigger house, a nicer car, nice watches, gadgets, a home theater, travel around the world, get more vacation time and shorter working hours, etc, etc. The poor guy will still have a comfortable house, enough food to eat, enough money for a few cigarettes and beers (or a PS2), and manages to get around with public transport. But the difference between capitalism and socialism is that the poor guy's kids will still have a good chance at becoming an awesome guy.