Apple's built-in Calendar program on macOS will import VEVENT entries just fine; most programs handle VEVENTs in an .ics file well.
VTODO, on the other hand, is broken in many applications, and I've only gotten VTODO to work on Mac once in my life—and I don't remember how. Outlook flat-out ignores VTODO.
If every calendar app supported VEVENT and VTODO well, my life would be much, much simpler. I'm required to use some cloud software that tracks events and tasks, and I'd love to sync it to my phone and have those events and tasks show up as events and tasks. But, because very few calendars import VEVENT correctly (or at all), my cloud software exports both events and tasks as VEVENTs—events for the correct duration, and tasks as a five-minute event on the due date. This is a stupid kludge to get around the usual bad support of VEVENT, and it's one of the things that raises my blood pressure the most.