Should I use and loop, or just a loop? I have this code:
if(listObj.Any(x =&gt; x.id &lt; 0))
{
    foreach(ModelClass item in listObj)
    {
        if(item.id &lt; 0)
        {
            // code to create a new Obj in the database
        }
    }
}

But, should I use like this?
foreach(ModelClass item in listObj)
{
    if(item.id &lt; 0)
    {
        // code to create a new Obj in the database
    }
}

NOTE: It's unusual to exist id &lt; 0 (I use this to create a temp id for manipulation in the page), but there is a possibility.

Extra info that I found:

Query transformations are syntactic
IMPROVE YOUR LINQ WITH .ANY()
MSDN Documentation - Enumerable.Any Method
Use .Where extension method to filter the records you need:

foreach(ModelClass item in listObj.Where(x =&gt; x.id &lt; 0))
{
    // code to create a new Obj in the database
}