Just because God is infinite and good does not mean that evil cannot exist. First of all, when we say that God is infinite, it means that He has no limits–except to say that God cannot lie (Hebrews 6:18), stop being God (Psalm 90:2), or be tempted by evil (James 1:13). God is good because this is His nature and He is the standard of moral right. But, God’s infinite nature does not mean that His goodness must permeate and overcome everything in existence. Because God is separate from His creation, creation has its own qualities. We can see this in the creation of man, where God created people with the freedom to rebel against Him. God has chosen to create us this way just as He chose to create the angels who rebelled against Him with the freedom to disobey Him.
Second, God has permitted evil to exist. It is within His sovereign plan to allow it to have its place. Theologians have offered many possible reasons for God allowing evil to exist: it glorifies Him, it is the cost of freedom, etc. Jesus said in John 15:13 “greater love has no man than this that he lay down his life for his friend.” The Bible also tells us that God is love (1 John 4:8). It is possible that since God is love and the greatest act of love is to die for a friend that God allowed evil in the world to serve as the means by which He would die (crucifixion) in order to exemplify the greatest act of love.