How to display the past events in one of the category?

you would need to use the date query:

$args = array (
   'cat' => '1234', // if category being used
   'post_type' => 'events', // if custom post type
   'paged' => get_query_var('paged'),
   'order' => 'DESC',
   'paged' => $paged,
   'date_query' => array( // this is the thing you need
     array(
       'before'    => array( // this is 'before today'...
         'year'  => date('Y'),
         'month' => date('m'),
         'day'   => date('d')
        ),
       'inclusive' => true,
     ),
    ),

    );
   $past_events = new WP_Query($args);

category, post type, and date in which you deem to be ‘past’ can be manipulated there.