architecture – TaskManager class design

We implemented a TaskManager class for this purpose: executing a number of tasks asynchronously one after the other. Basically, this class includes a queue of tasks and the functions to run/execute them.

Considering that the class is a hybrid between a collection and a manager, the question is: Should we have a separate queue inside it or not? What is the best architecture in this scenario?

public class TaskManager
{
    public List<Task> Queue; 

    public Exexcute(Task t) {...}
    public ExexcuteAll() {...}
}

or

public class TaskManager
{
    private List<Task> _queue; 

    public AppendToQueue() {...}
    public RemoveFromQueue() {...}

    public Execute(Task t) {...}
    public ExecuteAll() {...}
}