While reading up on multi-threading in C# (both from MSDocs, and books like Concurrency in C# by Stephen Cleary), I have repeatedly come across advice that essentially boils down to: threads are older, low-level, abstractions for concurrency that are superseded by Task and Task<T> classes.
Now I understand that tasks are higher level, more feature rich and powerful, and can do almost anything that threads were previously used for like asynchrony and parallelism.
My question is: Is there anything that threads can do , that newer Task and Task<T> etc. cannot do so that I spend time learning multi-threading just in case I come across those use cases?
 
     
    