I always use Marineland heaters. They come with a lifetime guarantee so they seldomly break. For your tank, you want (2) 250 watt heaters. It will run you about $45 total.
Rule of thumb for heaters is 5 watts of heat per gallon of water.
You never want to use one large heater. You always want two smaller heaters incase one breaks. This way, if you lose one, you are only losing 250 watts of heating and not 500 watts. Or looking at it the other way around, if one heater gets stuck "on", you only have 250 watts of heat pumping into your tank and not 500 watts. Very safe insurance policy.