They are both graphics libraries. AWT is the old-fashioned library that uses the windowing system of the operating system to control its objects. Swing is the new library that is written almost entirely in Java.
Lightweight means that they consume fewer resources than their heavyweight AWT counterparts.
A JTextField object is limited in size and intended for use when a single piece of data is to be entered. A JTextArea object expects to contain many lines of text.
The ListSelectionListener interface is used to determine which item in the list was selected.