I was blessed to read this short article from Charles Spurgeon. He explains why God sometimes delays in answering prayer. Here goes…
God often delays in answering prayer. We have several instances of this in sacred Scripture. Jacob did not get the blessing from the angel until near the dawn of day—he had to wrestle all night for it. The poor woman of Syrophenicia was answered not a word for a long while. Paul besought the Lord thrice that “the thorn in the flesh” might be taken from him, and he received no assurance that it should be taken away, but instead thereof a promise that God’s grace should be sufficient for him.
If thou hast been knocking at the gate of mercy, and hast received no answer, shall I tell thee why the mighty Maker hath not opened the door and let thee in? Our Father has reasons peculiar to Himself for thus keeping us waiting. Sometimes it is to show His power and His sovereignty, that men may know that Jehovah has a right to give or to withhold. More frequently the delay is for our profit. Thou art perhaps kept waiting in order that thy desires may be more fervent. God knows that delay will quicken and increase desire, and that if He keeps thee waiting thou wilt see thy necessity more clearly, and wilt seek more earnestly; and that thou wilt prize the mercy all the more for its long tarrying. There may also be something wrong in thee which has need to be removed, before the joy of the Lord is given. Perhaps thy views of the Gospel plan are confused, or thou mayest be placing some little reliance on thyself, instead of trusting simply and entirely to the Lord Jesus. Or, God makes thee tarry awhile that He may the more fully display the riches of His grace to thee at last.
Thy prayers are all filed in heaven, and if not immediately answered they are certainly not forgotten, but in a little while shall be fulfilled to thy delight and satisfaction. Let not despair make thee silent, but continue instant in earnest supplication.