Retrieve posts in custom post type and specific taxonomies

Both get_posts() and wp_query() should be able to do this by passing the tax_query array into them.

Example:

$query = array(
    'post_type' => 'portfolio',
    'post_status' => 'publish',
    'posts_per_page' => -1,
    'tax_query' => array(
        array(
            'taxonomy' => 'clients',
            'field' => 'slug',
            'terms' => array( 'acme' )
        )
    ),
    'orderby' => 'menu_order',
    'order' => 'ASC'
);

$posts = get_posts( $query );