Um. Yes...and no.
If you have spare cores, then you can use separate threads to genuinely do a number of things at the same time - but how many is not guaranteed, and will vary from moment to moment depending on the load on the system as a whole. And doing things truly independently requires pretty much that the tasks are not interdependent. If item 2 requires data from item 1's calculations, then it gets pretty complex to work out.
And if this will improve performance depends on the task you need to perform: adding threading adds an overhead of it's own, so a lot of small operations in different threads can be slower and require more resources than the same operations done sequentially in the same thread.
But...start by looking at
Parallel.ForEach[
^] and the
BackgroundWorker[
^] class - they are the easiest way to get started with this.
But be careful - there are a lot of "hidden" complexities when you start multithreading.