Gaining items after a match

Solution 1:

This might be outdated.

You get items regardless of the match outcome, that is, no matter you win or lose you have the same chance of getting items. However, there are two things to consider:

  1. You get one item 100% when you level up. Considering this, winning is actually beneficial to get items, because winning makes you level up faster, and leveling up gives you items.
  2. Depending on your level shown in your profile, you gain the chance of getting more rare items. After around level 15-20(not entirely sure), you will be eligible to gain arcana(rarest droppable) items, so after 225-300 games (obviously depends on win/loss ratio) you have the chance to gain all droppable items.

However, there is no information about whether or not there is a difference of drop chance between a 10 level and a 150 level account.

Solution 2:

There are a few ways of getting items.

  1. Random drop after each match
  2. Going up a level after every 1000 battle points
  3. Market place
  4. Trade with other players

Solution 3:

Every time you "level" up your account (hit 1000 points) you get a guaranteed item.

You also randomly get chests and more rarely other items. If you get a random item you can also get another item from leveling up so you can get at most 2 items per game from this.

Next to this there are also special items like Shopkeepers Surprise which causes a random person currently playing on the server (not necessarily in your game) to get an item.

Source: http://dota2.gamepedia.com/Item_drop_system