I'm still unsure exactly what you are asking, and I'm sure others have provided explanations in their own language.
Capture - "captures" (copies) the value of a free running timer for a given event. This event is usually a rising or falling edge on an IO. This means you can detect when the edge occurred because it stores a snapshot of the timer value, and gives your software time to read it, and perhaps use it to measure the period of an input (measuring speed, period, timed events). For repetitive signals (where the period doesn't change often) it has an input divider of 4 or 16. This means you can time (using the timer) how long it takes for the input to have a rising/falling edge 16 times - essentially averaging the result, but also increasing resolution.
Compare - constantly "compares" the value of the timer to a fixed value you provide. Once the values match you can choose what happens - usually a pin is driven high, low, or toggles (changes state). I believe PIC's also have an event system, where the compare match drives a special event trigger - this resets the timer, and can also start and ADC reading. This is very handy for generating arbitrary frequencies, generating a "tick", triggering an ADC reading for precise ADC sampling periods. The fact the special even trigger resets the timer means you are essentially counting up to a specific value, then resetting, meaning you can quite accurately set this period. Essentially a programmable timer that, combined with the prescalers can generate timing signals accurate to 4/Fosc seconds. (for a 10MHz clock, thats a resolution of 400ns).
Both the above can be done just with software and a timer, but you would have to poll the inputs, or poll the timer constantly, meaning the MCU can't do anything else. Like all peripherals, they are designed to off-load repetitive simple tasks to hardware, freeing up the CPU (or rather give it time to service interrupts without missing inputs). This is because MCU's are mostly single core, and can only do one thing at a time. Peripherals help it multitask by performing time-sensitive functions in separate hardware to be serviced later.