The types of the properties used in the join condition need to be same in a join query.
Otherwise you can reframe your query like below.
var query = (from fd in dbcDefaulter.Fees_Dues
join sd in dbcDefaulter.Student_Details
on new{
Student_ID =(int?)fd.Student_ID
}
equals
new{
Student_ID = (int?)sd.Student_ID
}
orderby fd.Student_ID
select new { fd.Month }).ToList();