All perfect praise be to Allaah, the Lord of the worlds. I testify that there is none worthy of worship except Allaah and that Muhammad, sallallaahu ‘alayhi wa sallam, is His slave and messenger.
Whoever vows to obey Allaah Almighty has to fulfill the vow. Allaah says (what means): {And fulfill their vows.} [Quran 22: 29] In a Hadeeth, the Prophet, sallallaahu ‘alayhi wa sallam, said: "Whoever vowed to obey Allaah, let him obey Him; and whoever vowed to disobey Him should not do so." [Al-Bukhari, Abu Daawood, An-Nasaa’i, At-Tirmithi and Ibn Maajah]
If one is unable to fulfill the vow, it is no longer binding, and he is then required to offer the expiation for breaking an oath. The Prophet, sallallaahu ‘alayhi wa sallam, said: "The expiation for a vow is the same as that for an oath." [Muslim]
The expiation for an oath is freeing a slave or feeding ten needy people or clothing them. If one is unable to do any of these, then he has to fast three days.
Cancelling a vow and offering the expiation just because the fulfillment is difficult, but not impossible, is impermissible. Such an action constitutes heedlessness regarding the obligations of Allaah and transgression against His Limits.
Allaah Knows best.