I have a list of 15,000 records. 
I can maintain the count in a flag. 

    Integer Counter = 15000;

I want to break my main list into 3 small lists. Each list should contain 5,000 records.

    if(mainLst.size() > counter)
    {
                    List<Custom__C> newList = new List<Custom__C>();
    				List<Custom__C> newList1 = new List<Custom__C>();
    				List<Custom__C> newList2 = new List<Custom__C>();
                    for(Integer i = 0; i< counter; i++)
                    {
                           newList1.add(mainLst[i]);
                           

       
                    }
                           // Perform some operation with newList1    
                           // Perform some operation with newList2 
                           // Perform some operation with newList3     
                                       
     }