Aspect-Oriented Programming (AOP) addresses limitations in the Object-Oriented (OO) paradigm relating to modularisation of crosscutting behaviour. In AOP, crosscutting behaviour is expressed as aspects that are integrated with a base program through a weaving process. Many language-specific AOP models already exist, requiring the programmer to work with a single language for base and aspect programs. The .NET framework, with its multilanguage standards and architecture, has presented a new opportunity for crosslanguage AOP within .NET. Advances have been made to take advantage of this opportunity, but at the expense of qualities such as the ability to debug executing code, or define some kinds of weaving capabilities. This paper describes an investigation into providing cross-language AOP in .NET without making such compromises. The approach, called SourceWeave.NET, allows debugging because it weaves source code, and also provides an extensive weaving model. We describe what can be lea...