Weaving extends your program adding new functionality.
It can be at different levels for difference purposes (AOP, Debugging, Automated Testing, etc).
This .net – What is IL Weaving? question on StackOverflow contains a few pointers to interesting reading material.
–jeroen