How to ban/report offensive players in Dota2?

Solution 1:

  1. To address the reporting part, this has to be done in-game. Press the offender's name in the scoreboard, then you'll be able to see "Report Player". Once you click that, you will be able to provide more information about your case.

  2. In order to mute voice chat (mic), you can go under scoreboards again and press the sound button beside the player's name. However, if you want to mute the on-screen typing chat, you'll have to click "Mute chat" when you press enter.

  3. No, you can't make a blacklist, because as Valve says, it goes agains the notion of matchmaking (mentioned above).

Solution 2:

Reporting and Silencing are both done while the game is being played. When the game ends your last chance is on the scoreboard. Right click on players name to report or click the silence button next to the name, remember always INGAME

Solution 3:

With respect to your comment about blacklisting: there is no official feature, but muting someone persists past the game you muted them. This means if you are in the loading screen and see a player you've previously muted, you can simply disconnect then and there to avoid playing with them without suffering an abandon. This is called 'dodging', as some higher MMR players use this as a method to avoid playing with/against certain players.