My take on this one:
"They have invited me to dinner at their house" or "They have invited me to their house for dinner".
Both can obviously be used
'They have invited me to dinner at their house.' However this has an underlying sense of formality in the language.
'They have invited me for dinner at their house.' Still is correct RonBee, as there is a correct verb agreement however the expression is just clumsy.
I am surprised that the first two choices have more votes than BOTH. Either could be used because "to" and "for" are sometimes interchangeable. This is one of those times.
Invited to dinner looks more grammatically correct
They have invited to dinner at their house.
'We have pizza FOR dinner. Bring your friend (for dinner)'. This literally means your friend is going to be eaten with pizzas. Therefore to avoids confusion, the correct form should be 'bring your friend to dinner'.
Either is/can be used but for is more correct...