Question: I am trying to determine the best directory structure of my application

i have:

UI  

Data  

Interfaces 

but i dont know where to put delegates..

should there be a seperate Delegates folder or should i store the delegates in the same classes where they are being used . .

Answer: 
If you have an common use for your delegates, you should store them on a common place, but if you only use it in your class then put it in the same class.
Delegates are essentially reference type method containers. In my opinion you should store the delegates in the same classes where they are being used. There is no need to create a separate delegate folder.