God often delays in answering prayer. We have several instances of this in the Bible. 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 asked the Lord three times that “a thorn . . . in the flesh” ( 2 Cor. 12:7) might be taken from him, and he received no assurance that it should be removed, but instead a promise that God’s grace would be sufficient for him. If you have been knocking at the gate of mercy, and have received no answer, shall I tell you why the mighty Maker has not opened the door and let you in? Our Father has personal reasons for keeping us waiting. Sometimes it is to show His power and His sovereignty, that we may learn that God has a right to give or to withhold. More often the delay is for our benefit. You are perhaps kept waiting in order that your desires may be more fervent. God knows that delay will quicken and increase desire, and that if He keeps you waiting, you wilt see your need more clearly and will seek more diligently; and that you will treasure the mercy all the more on account of the wait. There may also be something wrong in you that needs to be removed before the joy of the Lord is given. Perhaps your views of the gospel plan are confused, or you may be relying on yourself instead of trusting simply and entirely in the Lord Jesus. Or God makes you wait for a while so that He may display the riches of His grace more abundantly in the end. Your 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 your delight and satisfaction. Do not allow despair to make you silent, but continue to present your requests to God.
Source: Charles Spurgeon, Morning by Morning, Dec. 9.