diff --git a/src/Spectre.Console/Widgets/Progress/Progress.cs b/src/Spectre.Console/Widgets/Progress/Progress.cs
index 0e34b6d..80761fe 100644
--- a/src/Spectre.Console/Widgets/Progress/Progress.cs
+++ b/src/Spectre.Console/Widgets/Progress/Progress.cs
@@ -68,6 +68,18 @@ namespace Spectre.Console
task.GetAwaiter().GetResult();
}
+ ///
+ /// Starts the progress task list and returns a result.
+ ///
+ /// The result type.
+ /// he action to execute.
+ /// The result.
+ public T Start(Func func)
+ {
+ var task = StartAsync(ctx => Task.FromResult(func(ctx)));
+ return task.GetAwaiter().GetResult();
+ }
+
///
/// Starts the progress task list.
///
@@ -82,13 +94,13 @@ namespace Spectre.Console
_ = await StartAsync