.dll files are not meant to be edited. however, it donesn't mean you can't do it.
the ease or difficulty of doing it depends on:
- what language it was developed in and
- what exactly do you want to edit
- if the .dll file is a dot net assembly then it's relatively easy.
All you need is a good dot net disassembler (you can find a lot of these. try google). And ya, you should have knowledge about programming language supporting dot net.
- if you just want to change images or icons in it, or strings or text in it, etc. etc. then i recommend using PE Explorer (not free), or Resource Hacker (free). Note: these might not work with dot net dlls (assemblies)
- if the dll file you're talking about is not a dot net assembly, then most likely it's developed in C or C++. this means trouble. to edit (or reverse engineer) these dlls you need good knowledge of 32bit assembly language and win32 API. You need good disassembler and a good debugger. Unless you're an expert in win32 programming i don't recommend trying this.
Best of luck!