linq query to remove items from a list that don't exist in another list
===

I have an Organisation object

    public class Organisation
    {
        OrgId {get....}
        OrgName {get...}
        AccountTypes { get....} //this is of type List<AccountType>
    }

and an AccountType object

    public class AccountType
    {
        AccountTypeId {get....}
        AccountTypeName {get...}
    }

I'm looking for a way to look through the existing Organisations List and remove AccountTypes from each organisation where the account types are not found in another list of AccountTypes (which would be a post back from a browser)

Would I do something like 

    var foundOrgs = from org in orgs
                    where org.OrganisationId == Convert.ToInt32(hash["orgId"])
                    select org;
    Organisation organisation = foundOrgs.ElementAt(0);
    organisation.AccountTypes.Clear();
    organisation.AccountTypes = (**)

** This is the confusing part - I'm looking to do a Linq query that will compare one list with another and return only those items where the AccountTypeIDs match, or are present. 

Hope this wasn't too confusing.??

Thanks,
Jacques
