A hard gainer is someone that finds it nearly impossible to put on muscle or weight no matter how much they eat. These people are cursed (or blessed) with a very fast metabolism that seems to instantaneously adjust and burn off any extra calories that are taken in as part of an increased calorie diet.
If you're one of these hard gainers, it is possible to put on muscle but it won't be very easy. The basic rule of gaining weight applies to everyone including hard gainers: eat more than what you burn.
The problem for you is that the amount your body burns is very high. To gain weight, you have to find out how much your body burns and make sure to eat more every single day. Start by using the calorie calculator. This tool will give you an estimate of how many calories you burn based on your body proportions and activity level. Since you're a hard gainer, start by eating 500 calories over what the calculator says you burn everyday.
Track Body Weight
Weigh yourself each day at the same time. If at the end of your first week, you haven't gained any weight, increase your calorie intake by an additional 500 calories per day. Keep monitoring your weight and increasing your calorie intake until you start seeing the desired weight gain. The problem most hard gainers face is that they quit too soon.
The Bottom Line
If you stay on this track, you'll eventually start gaining weight. Another thing to consider is to decrease the amount of cardio you do. Don't stop it completely since it offers a lot of health benefits but doing too much cardio will burn an even greater amount of calories - something you don't need help with.