I would prefer SendGrid. It wasn't an option in my use case. Gmail moved to a similar method of sending mail though. They do not support SMTP anymore and they have an API now instead. To use this API, there's a NuGet package you can use.
Just like Sendgrid, Gmail now has a free plan and a paid plan. The paid plan means you'll need to get a Google Workspace account (15 euro's a month). If you do so, you can authenticate with a certificate. This is easy to implement in a web-based solution.
The gmail free plan means you'll have to authenticate once, and you can then refresh your credentials indefinitely. (For now there's a small issue with this scenario which i'll be fixing next week..) This scenario is better for a desktop based use-case.
The solution I wrote about sends mail via your account, meaning it is similar to you sending mails directly from your gmail account. So, this means your e-mails will most likely not be gray- or blacklisted. (Unless of course, you use e-mails addresses which aren't yours as a sender, or send other type of mails that would be gray/blacklisted anyways..)
Hope this answers your question?