Start here. This is the direct spoken answer to practice first.
Why this question matters
Modern full-stack apps often have both a frontend server and a backend API. The design needs a clear boundary so the BFF layer helps the UI without becoming a second unowned backend.
I would use a BFF layer when the browser should not handle backend tokens directly, when server-rendered pages need authenticated data, or when the UI needs a small aggregation tailored to a page. The Next.js layer can read secure cookies, call the ASP.NET API with a bearer token or server credential, normalize errors, and return a frontend-friendly response. The ASP.NET API still owns business rules and authorization.