CodeProject is your friend: see: "Priority queue in C# with the help of heap data structure" by Alexey Kurakin, May 2011[
^].
I'd decompose your solution into two parts: one implementing a priority queue, and then the task of creating/refreshing a Linked List sorted based on the priority queue.