Credo che il problema stia nel fatto che dovresti passare il percorso assoluto e non solo il nome della directory.
Per farla più breve puoi sostituire il parametro del metodo lista() in modo che esso accetti un oggetto File e non uno String. Così ti eviti il problema e passi solo il contenuto dell'array.
codice:
public class TestMain {
	/**
	 * @param args
	 */
	public void lista (File partenza){   // <-- modificato qui
		File[] list=partenza.listFiles();   // <-- modificato qui
		int MAX=list.length;
		for (int i = 0; i<MAX;  i++){
			if (list[i].isDirectory()) 
				this.lista( list[i] );  // <-- modificato qui
			else
				System.out.println(list[i].getName());
		}
	}
	public static void main(String[] args) {
		TestMain t = new TestMain();
		t.lista( new File("C:\\") );   // <-- modificato qui
	}
}