In term of low level user API (task, workflow, op), I think it's quite similar. But dagster recently added higher level api that they call software defined asset. It's more opinionated but some might find it useful, especially for ETL. I think it's also doable in Flyte.
I agree with @Ketan (kumare3), the key differentiator of Flyte is its scalability and plugability. It's hard to achive multitenancy in dagster (at least from what I experience a while back) and plugin can only be done in front end as python task. In flyte there is backend plugin concept.