I have often asked this question, as well. However, I have a different twist on it. If we are God's children, and he loves all his children, why would he send us to hell? I understand that it is a punishment for our sins, or for not accepting him into your life, but if he truly loved us, would he not give us every opportunity to repent our sins? And what about 'non believers'? Would God really condemn them to an eternity in hell simply because they do not believe something they can not see and have no physical proof that it even exists? Would God condemn them because they are unsure of themselves, or unsure of the Christian's version of God? Would they not have an opportunity to accept him after death, if that is what it took?
My belief is that there is no hell, but rather a 'prison' of sorts in heaven. I suppose it could be called a hell, but the common understanding of hell is that it's permenant, and I do not believe that it is. (Not for everyone, at least) God can see into our hearts, and will know when someone has truly repented and accepted him. I think that the opportunity to do so will continue after death for those who really need it. After all, would we condemn someone for life for stealing a candy bar? No, they would suffer the consequences and be given the chance to prove they have learned their lesson. We are modeled after God, so why would he not do the same?
Also, I believe that we have free will, and that everything is NOT fortold. God may have the power to manipulate everything, but I don't believe he uses that power. If you were playing a game of chess, it would get pretty boring if you were playing against yourself. You would know every move, so what's the point in playing? Imagine playing that same chess game for several million years. No point to it if you know the outcome.