If your wallet is encrypted, and you lost or forgot the passphrase, then there is no recovery of the Bitcoins available; they are gone!
Since 90% of the concern is Internet hackers and intruders, not people with physical access to your pc, it would be best when you re-create your wallet that you write down the passphrase and store it in several places. Or just not encrypt the wallet.
Before getting started, close Bitcoin. This means making sure it is not running in the system tray or hidden either.
To delete the wallet (and lose all bitcoins in it forever), you need to manually explore to the Bitcoin data directory and remove the file wallet.dat. On a Windows PC, you can open Windows Explorer, and type %APPDATA%\Bitcoin into the location bar to change to the Bitcoin data directory. Once there, look for the file wallet.dat (it may just say "wallet" if you have hidden file extensions), and rename it to something like wallet-forgottenpassword. Restart Bitcoin and it will create a new wallet file.
What if you have forgotten the exact password (as in the exact spelling) but you still remember roughly what it was? Is there some program which you can feed this data into and it will crack the password.
Please, any help will be appreciated.
There are no external utilities I know of yet that allow direct access to an encrypted wallet.dat to try passwords, although there are some threads on this forum discussing how the encryption is implemented (for adding support to pywallet and other wallet-manipulation tools). When somebody writes the example code to access encrypted wallets, it can be used in a password brute-forcer such as those available at
http://www.crark.net, but from my past experience it is still a computational challenge to find a "my password might have been like xxxxx".
Probably the easiest way to test some passwords is to run bitcoind (daemon), and then make and run a script/batch file with "bitcoind walletpassphrase TryThis 60" on each line, where TryThis is replaced with the password to attempt, which can be from a character generator. That will do about one password a second, and when you don't get an error, that's the password.