In-tank cleaners can be helpful, generally for preventive maintenance. Many gasoline brands have some detergents blended in for that purpose. Occasionally, an in-tank cleaner will actually correct a problem (e.g. rough idle). I’ve had the best results from Techron. It’s made by Chevron, but is also house-branded by some auto manufacturers (always a good sign). I suggest adding a bottle to the tank every 3 or 4 months for maintenance; it’s a relatively cheap thing to do that’s likely to help forestall problems.
Nowadays, with improved injector designs and gasoline with detergent, significant carbon deposits in the injection system are somewhat rare. There are various systems for professional cleaning, but in general these services involve special solvents circulated through the system with special equipment. Properly done, it cleans better than any tank additive possibly could. Many cars will run somewhat better with this service, but I wouldn’t say it was needed in the absence of drivability symptoms.
A related issue is carbon deposits in the throttle body. This is a fairly typical problem, and I would recommend a throttle body cleaning at least every 60,000 miles, for some cars 30,000. No gasoline goes through the throttle body (the deposits are caused by vapors from the crankcase [oil] and EGR system), so gasoline additives and in-tank cleaners have no effect. Throttle body cleaning can be done separately, but is typically part of an on-car injector cleaning service (you can ask to be sure).