They are very similar. Almost interchangeable. In general, use remain for things and stay for people or animals. Por ejemplo: I ate two eggs and ten remain in the box. You would not use stay in this case. Using stay implies a decision was made to stay