As it is SharePoint Online, the scenario you have mentioned is quite possible.
Out of the box(OOB):
You can use the CQWP web part(Content Query WebPart) which is OOB and does what you want, because you cannot take a list view outside its own site.
So you just add a CQWP webpart and in the properties give the site you want to pull data from and content type as
Task list, then it will bring all the items from the task list of the current site and all its subsite. You can also filter more with additional queries in the webpart properties. Example here: When to use the Content Query Web Part or the Content Search Web Part in SharePoint
In custom development, you need to do is build up the code with the
REST api to fetch data from your required subsite. I have done the same for one of my project. There are also other ways like creating provider hosted app and create client webparts in it, but I found this one as easy.
Here is an example to fetch data with
REST api: Pull data from particular subsite and show on root site
Once you are able to fetch the data you can use any jQuery plugin or create one to show it in Chart view, timeline view, accordion etc.. Custom coding gives you more flexibility with UI to enhance it.