Historically, each BMW has carried an E project number – standing for Entwicklung, or development. The numbers have then risen progressively up to triple digits, at which point F numbers have taken over.
BMW E codenames
BMW E3 2500/2800 saloons, 1968-1977
BMW E9 2000-2800 coupés, 1968-1974
BMW E12 1st-gen 5-series, 1975-1981
BMW E21 1st-gen 3-series, 1976-1983
BMW E23 1st-gen 7-series, 1978-1987
BMW E24 1st-gen 6-series, 1977-1989
BMW E25 Turbo concept car, 1972
BMW E26 M1 supercar, 1978-1981
BMW E28 2nd-gen 5-series, 1982-1988
BMW E30 2nd-gen 3-series, 1984-1992
BMW E31 8-series, 1989-1999
BMW E32 2nd-gen 7-series, 1986-1994
BMW E32/2 2nd-gen 7-series LWB, 1987-1994
BMW E34 3rd-gen 5-series, 1989-1995
BMW E36 3rd-gen 3-series, 1992-1999
BMW E36/5 3-series Compact, 1994-2000
BMW E36/7 Z3, M Roadster, M Coupé, 1995-2002
BMW E38 3rd-gen 7-series, 1994-2001
BMW E38/2 3rd-gen 7-series LWB, 1994-2001
BMW E38/3 3rd-gen 7-series armoured, 1998-2001
BMW E39 4th-gen 5-series, 1996-2004
BMW E46 4th-gen 3-series, 1999-2005
BMW E46/5 2nd-gen 3-series Compact, 2001-2004
BMW E52 Z8, 2000-2003
BMW E53 1st-gen X5, 2000-2006
BMW E60 5th-gen 5-series, 2004-2010
BMW E61 5th-gen 5-series Touring, 2004-2010
BMW E63 2nd-gen 6-series, 2003-
BMW E65 4th-gen 7-series, 2001-2008
BMW E66 4th-gen 7-series LWB, 2002-2008
BMW E67 4th-gen 7-series armoured, 2001-2008
BMW E68 4th-gen 7-series hydrogen
BMW E70 2nd-gen X5, 2007-
BMW E82 1st-gen 1-series, 2004-
BMW E83 1st-gen X3, 2003-
BMW E85
/6 1st-gen Z4, 2003-2009
BMW E89 2nd-gen Z4, 2009-
BMW E90 5th-gen 3-series saloon, 2005-
BMW E92 5th-gen 3-series coupé, 2005-
BMW F codenames
F01 5th-gen 7-series, 2008-
F02 5th-gen 7-series LWB, 2008-
F03 5th-gen 7-series armoured, 2008-
F10 6th-gen 5-series saloon, 2010-
F11 6th-gen 5-series Touring, 2010-
F12 3rd-gen 6-series coupé, 2011-
F13 3rd-gen 6-series convertible, 2011-
F25 2nd-gen X3, 2011-
F30 6th-gen 3-series, 2011-
source: http://www.carmagazine.co.uk/News/Search-Results/Industry-News/All-the-BMW-E-and-F-codenames-explained/
EDIT: Website was missing E89, so added it.
