Here are the addons I primarily use for M+
My weakauras and ElvUI profile can be found here
The majority of my UI is provided by ElvUI which is essentially a suite of addons that have several functions (unit frames, bags, chat, tooltips, etc.) It’s highly customizable and takes care of a lot of my needs. Be prepared to spend some time configuring it to your liking, but once you’ve got it set up you’ll never want to play without it.
Weakauras is another essential addon for M+ (and most other things). It allows you to create custom graphics that can do just about anything: track cooldowns, warn you when abilities are being cast, display what trinkets you’re wearing. Weakauras are limited only by your imagination, and anyone that wants to do PvE at a high level will likely find themselves incorporating a bunch of Weakauras into their UI.
Little Wigs (or DBM) are dungeon addons that track timers and abilities for trash and bosses in M+. They provide a lot of useful information during fights, and occasionally help out with other things (like displaying who can use which items in Court of Stars).
Kui is a nameplate addon. Most nameplate addons function similarly and are differentiated by looks. I just happen to prefer Kui’s design.
Clique is an addon that lets you quickly assign keybinds to abilities for mouseover casting. You can do some of this with @mouseover macros, but by default WoW’s unit frames won’t detect keybinds on your mouse. Clique lets you assign mouseover keybinds to your mouse and get around this limitation of the default UI.
xct+ is a scrolling battle text addon that will display combat numbers (damage done, healing done, etc.) in a window instead of over the heads of characters. Useful if you find the default scrolling text too noisy or distracting.
Angry Keystones (or its counterpart Gotta Go Fast) are addons that track M+ key timers and let you know how much time you have left for +3, +2, etc. They also track deaths in the key and a few other helpful things.