Apache Wicket's main features include its component-based architecture where you build pages from reusable components, separation of pure Java code and pure HTML templates (no special tags needed), and automatic state management across requests. Option B is incorrect because not all framework classes are interface-based - Wicket uses concrete classes extensively for practical implementation.