I start in the attic with a flashlight, looking for soaked insulation, droppings and roof leaks, because sealing under a wet or dirty mess just traps the problem. Small leaks hide under the insulation you already have, so we test for them instead of guessing. Before we tighten up the house, we check how your gas appliances vent, since sealing changes how they get their air. Then our crew seals the gaps around pipes, wires, can lights and the attic hatch with foam, caulk or weatherstripping, whichever fits the gap, keeps the eave vents clear so the attic can still breathe, and lays the insulation back down evenly, with the edges as full as the middle.
Leaks don't stop at the attic floor. The rim joist, where the house framing sits on the foundation, is a common one, and we often seal it while doing basement insulation. Where you want the seal and the insulation in one layer, closed-cell foam insulation does both at once and blocks moisture too.
Seal the gaps and top up loose fill
This suits most attics we see, because it closes the leaks that matter and then adds blown-in insulation, loose fill blown through a hose, over the top. It usually costs less than foam and does the job, so it's where I start unless something in the attic says otherwise.
Spray foam when the ductwork is in the attic
Foam costs more, but it seals air while it insulates, which matters when your furnace ducts run through the attic. In that case I'd pick foam, because it keeps the ducts on the warm side instead of sitting out in the cold.