TL;DR; SharePoint lists include a built-in unique, auto-generated ID column. Enable its display in list settings to show unique IDs for each item without custom solutions.

This seams to be a common problem, and one that I get many calls from users about:
I have a query with our Sharepoint site and was advised that you were probably the best person to ask.
I have created a list under:
http://sharepoint/sites/department/Lists/ListName/AllItems.aspx
I need the first column (Issue ID) to be an automatically generated number but can’t seem to get it. Would it be possible for you to take a look and advise?
You can’t add a new unique auto-generated ID to a SharePoint list, but there already is one there! If you edit the “All Items” view you will see a list of columns that do not have the display option checked.
There are quite a few of these columns that exist but that are never displayed, like “Created By” and “Created”. These fields are used within SharePoint, but they are not displayed by default so as not to clutter up the display. You can’t edit these fields, but you can display them to the user. if you check the “Display” box beside the ID field you will get a unique and auto-generated ID field displayed in your list.
Technorati Tags: SP 2007 Answers SP 2010 SharePoint
If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.
We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.
NIT A/S

Flowmaster (a Mentor Graphics Company)

Workday

Teleplan

Emerson Process Management

YearUp.org

Big Data for Humans

Trayport

Deliotte

Kongsberg Maritime

Bistech
CR2

Xceptor - Process and Data Automation

Sage

Akaditi

Qualco

Alignment Healthcare

Healthgrades

Washington Department of Transport

Washington Department of Enterprise Services

New Hampshire Supreme Court

Nottingham County Council

Department of Work and Pensions (UK)

Royal Air Force
Boxit Document Solutions

Xceptor - Process and Data Automation

Brandes Investment Partners L.P.

Teleplan

Kongsberg Maritime

Workday