Asking this question with C# tag, but if it is possible, it should be possible in any language. 

Is it possible to implement a doubly linked list using Interlocked operations to provide no-wait locking? I would want to insert, add and remove, and clear without waiting.
['https://Stackoverflow.com/questions/849786', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/92692/']
Well you haven't actually asked how to do it. But, provided you can do an atomic CAS in c# it's entirely possible. 

In fact I'm just working through an implementation of a doubly linked wait free list in C++ right now.

Here is paper describing it.
<http://www.cse.chalmers.se/~tsigas/papers/Haakan-Thesis.pdf>

And a presentation that may also provide you some clues.
<http://www.ida.liu.se/~chrke/courses/MULTI/slides/Lock-Free_DoublyLinkedList.pdf>
I would say that the answer is a very deeply qualified "yes, it is **possible**, but hard". To implement what you're asking for, you'd basically need something that would compile the operations together to ensure no collisions; as such, it would be very hard to create a general implementation for that purpose, and it would still have some significant limitations. It would probably be simpler to create a specific implementation tailored to the precise needs, and even then, it wouldn't be "simple" by any means.