В классе формы объявить объект типа IProgress и инициализировать, например в конструкторе:
IProgress<int> progress;
progress = new Progress((i) =>
             {
                 progressBar.Value = i;
             });
Немного переделать метод calc:
public Task calc(IProgress<int> progress)
{
return Task.Run(() =>
            {
            for (int i = 0; i < listToCalc.Count; i++) {
                listOfWells.Add(new Well(listToCalc[i]));
                listOfWells[i].calcP();
                progress.Report(i)
            }
            });
        }
В обработчике:
private async void button3_Click(object sender, EventArgs e)
        {
                ProgressBar.Maximum = listToCalc.Count;
                ProgressBar.Value = 0;
                ProgressBar.Step = 1;
                listOfWells.Clear();
                await calc();
            }
Как-то так попробуй. Мог скобку потерять, или еще что по мелочи.