I know that dot net dlls and exe contain their assemblies with them so every body can extract code from it. So please tell me how can i create my own .net obfuscator and if
If you want to understand some of the technical details of obfuscation I'd recommend reading the series of blog posts by Paul Mason. The series is called "Protecting your precious code" and you can find it here.
It's linked with a project called NCloak, this is open so you can download the source and take a look yourself if you want.
But I have to agree with others, this isn't easy and so you are probably better off buying a commercial product. As Paul says in several of his articles there are ways round most techniques, it's just a case of how much time someone wants to spend doing it.
But if you want to learn for you own education, then go-ahead.